hgl 0.5.25
A compiler/interpreter suite for developing images
Classes | Functions
Utility classes

Classes and methods providing commonly used utilites. More...

Collaboration diagram for Utility classes:

Classes

class  HGL::Common::Application
 Base class of a typical HGL Suite application. More...
 
class  HGL::Type::DefaultProjectFactory
 Convenience class for implementing HGL::Type::IProjectFactory. More...
 
interface  HGL::Common::IApplication
 Interface to a typical HGL Suite application. More...
 
interface  HGL::Common::IApplicationObserver
 Interface to provide access to HGL::Common::Application. More...
 
interface  HGL::Common::IParser< ProjectInterface, Factory >
 Interface to a parsing subsystem. More...
 
interface  HGL::Type::IProjectFactory
 Interface to a factory creating types. More...
 
class  HGL::Common::Logger
 Console logger (to std::wclog) More...
 
class  HGL::Common::PoptTableBuilder
 Builds a POPT table structure. More...
 
class  HGL::Common::Q24
 Class to represent a float as 24bit integer in the Q number format. More...
 
class  HGL::Common::RAIIFactory< T, arrayDel, Container, capacity >
 Template to implement a RAII factory. More...
 
class  HGL::Common::RegexInitializer
 Initializes an extended regular expression. More...
 
class  HGL::Common::Singleton< T >
 Template providing the singleton pattern. More...
 
class  HGL::Common::ThreadPool< Worker, Task, NUM_THREADS >
 Template providing a thread pool for asynchronous tasks. More...
 
class  HGL::Common::URI
 Class to access files locally and remote. More...
 
class  HGL::Common::Util
 Miscellaneous utility functions. More...
 

Functions

template<class ProjectInterface , class Factory >
ProjectInterface * HGL::Common::createProject (const std::string &progdesc, const std::string &version, const std::string &buildnode, const std::string &buildhost, const std::string &target, const std::string &builddate, int argc, const char **argv, const HGL::Common::IParser< ProjectInterface, Factory > *const parser, Factory *const fac, struct::poptOption *const progOpts, char **const outputFilename, const char *suffix, ProjectInterface *const lib=0L) throw (HGL::Exception::ParserException, HGL::Exception::IOException, HGL::Exception::PoptExitException)
 Creates a project. More...
 
template<class ProjectInterface , class Factory >
ProjectInterface * HGL::Common::createProject (const HGL::Common::IParser< ProjectInterface, Factory > *const parser, Factory *const fac, HGL::Common::URI *const infile, ProjectInterface *const lib=0L) throw (HGL::Exception::ParserException, HGL::Exception::IOException)
 

Detailed Description

Classes and methods providing commonly used utilites.

Function Documentation

template<class ProjectInterface , class Factory >
ProjectInterface * HGL::Common::createProject ( const std::string &  progdesc,
const std::string &  version,
const std::string &  buildnode,
const std::string &  buildhost,
const std::string &  target,
const std::string &  builddate,
int  argc,
const char **  argv,
const HGL::Common::IParser< ProjectInterface, Factory > *const  parser,
Factory *const  fac,
struct::poptOption *const  progOpts,
char **const  outputFilename,
const char *  suffix,
ProjectInterface *const  lib = 0L 
)
throw (HGL::Exception::ParserException,
HGL::Exception::IOException,
HGL::Exception::PoptExitException
)

Creates a project.

Parses and creates the internal tree of a HGL Suite project

Template Parameters
ProjectInterfacetype of the project interface
Factorytype of the project factory
Parameters
progdescname of the component, i.e. interpreter, compiler, svg2hgl
versionversion of the component
buildnodename of the node where it was built
buildhostthe platform on which the HGL Suite was compiled
targetthe platform for which the HGL Suite was compiled
builddatedate of the build
argcthe comandline argument count
argvthe command line arguments
parserthe parser to use for parsing the input
facthe factory to use for building the types
progOptstbw
outputFilenamethe name of the output file
suffixsuffix to append to outputFilename if omitted or NULL
libthe stdlib or 0L if the project is the stdlib itself
Returns
the parsed project tree
template<class ProjectInterface , class Factory >
ProjectInterface * HGL::Common::createProject ( const HGL::Common::IParser< ProjectInterface, Factory > *const  parser,
Factory *const  fac,
HGL::Common::URI *const  infile,
ProjectInterface *const  lib = 0L 
)
throw (HGL::Exception::ParserException,
HGL::Exception::IOException
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.