VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
DtVpfSpecFactory Class Reference

This is the VPF Specification Factory class. It creates MaK specifications based on the input data row.

Public Member Functions

 DtVpfSpecFactory (DtVpfDatabase *Db)
 
virtual ~DtVpfSpecFactory ()
 
virtual bool init ()
 
virtual bool createNewSpecification (DtSpecification &spec, DtSpecificationID &specID, const DtVpfRow &row)
 
virtual DtVpfDatabasedatabase () const
 
virtual void findBounds (DtSpecification &spec, const std::vector< DtVpf3Coord * > *coords)
 

Protected Member Functions

virtual DtColor findColor (DtString sedrisCode)
 
virtual std::vector< DtStringtokenize (const std::string &str, const std::string &delim)
 
virtual bool initColorMap ()
 
virtual bool initSpecMap ()
 
virtual void insert (DtSpecification &spec, DtVpfEnumeration &e)
 
virtual DtSpecificationfindSpec (const DtVpfEnumeration &e)
 
virtual DtVpfEnumeration buildEnum (const DtVpfRow &row)
 

Protected Attributes

DtColorMap myColorMap
 
DtVpfDatabasemyDatabase
 
DtVpfSpecNodemyRootSpecNode
 

Private Member Functions

 DtVpfSpecFactory (const DtVpfSpecFactory &input)
 
DtVpfSpecFactoryoperator= (const DtVpfSpecFactory &input)
 

Constructor & Destructor Documentation

DtVpfSpecFactory::DtVpfSpecFactory ( const DtVpfSpecFactory input)
private

Copy constructor is private to prevent copying.

DtVpfSpecFactory::DtVpfSpecFactory ( DtVpfDatabase Db)

Constructor Takes a vpfDatabase pointer as a parameter to identify the theme of interest while creating a specification.

virtual DtVpfSpecFactory::~DtVpfSpecFactory ( )
virtual

Destructor.

Member Function Documentation

DtVpfSpecFactory& DtVpfSpecFactory::operator= ( const DtVpfSpecFactory input)
private

Assignment operator is private to prevent copying.

virtual bool DtVpfSpecFactory::init ( )
virtual

Initializes the the factory by loading the proper files.

Returns
a boolean to indicate the success or failure of the load
virtual bool DtVpfSpecFactory::createNewSpecification ( DtSpecification spec,
DtSpecificationID specID,
const DtVpfRow row 
)
virtual

creates a new specification based on the input feature

Returns
A boolean indicating the success or failure of creating a new specification for the given row
virtual DtVpfDatabase* DtVpfSpecFactory::database ( ) const
virtual

returns the database that is using this specification factory

Returns
a pointer the vmapDatabase
virtual void DtVpfSpecFactory::findBounds ( DtSpecification spec,
const std::vector< DtVpf3Coord * > *  coords 
)
virtual

find the bounds of an areal feature. Accepts a specification and the coordinates for that feature. It determines the bounds and adds them to the specification.

virtual DtColor DtVpfSpecFactory::findColor ( DtString  sedrisCode)
protectedvirtual

finds the color from the SEDRIS code. Colors are loaded from the file "sedris_colormap.txt"

Returns
A color based on the given sedris code, black if not found
virtual std::vector<DtString> DtVpfSpecFactory::tokenize ( const std::string &  str,
const std::string &  delim 
)
protectedvirtual
virtual bool DtVpfSpecFactory::initColorMap ( )
protectedvirtual
virtual bool DtVpfSpecFactory::initSpecMap ( )
protectedvirtual
virtual void DtVpfSpecFactory::insert ( DtSpecification spec,
DtVpfEnumeration e 
)
protectedvirtual
virtual DtSpecification* DtVpfSpecFactory::findSpec ( const DtVpfEnumeration e)
protectedvirtual
virtual DtVpfEnumeration DtVpfSpecFactory::buildEnum ( const DtVpfRow row)
protectedvirtual

Member Data Documentation

DtColorMap DtVpfSpecFactory::myColorMap
protected
DtVpfDatabase* DtVpfSpecFactory::myDatabase
protected
DtVpfSpecNode* DtVpfSpecFactory::myRootSpecNode
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)