VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
tdbMetafileFactory.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1998 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: tdbMetafileFactory.h,v $ $Revision: 1.8 $ $State: Exp $
7 *******************************************************************************/
8 #ifndef tdbMetafileFactory_H_
9 #define tdbMetafileFactory_H_
10 
11 // \file tdbMetafileFactory.h
12 // \brief Contains the DtTdbMetafileFactory class declaration.
13 
15 #include <vlutil/vlFilename.h>
16 #include <vlutil/vlConfig.h>
17 #include <map>
18 
19 class DtMetafileRecord;
20 
21 // Instances of this class used as factories to create the metafile records
22 // used when loading supported terrain files through .map files. The .map files
23 // contain metafile records, which are created through this factory, and used
24 // to initialize the terrain reader initializers, which are then passed to the
25 // terrain readers.
27 {
28 public:
29  typedef DtMetafileRecord* (*DtTdbMetafileCreatorFcn)();
30  typedef std::map<DtString, DtTdbMetafileCreatorFcn> DtTdbMetafileCreatorContainer;
31 
32  // default constructor.
34 
35  // copy constructor
37 
38  // assignment operator
39  const DtTdbMetafileFactory& operator=(const DtTdbMetafileFactory& orig);
40 
41  // destructor
42  virtual ~DtTdbMetafileFactory();
43 
44  // Registers the default creators with the factory
45  virtual void init();
46 
47  // Add a creator function to the factory.
48  virtual void registerTdbMetafileCreator(const DtString &type, DtTdbMetafileCreatorFcn fcn);
49 
50  virtual DtMetafileRecord* createMetafileRecord(const DtString &type) const;
51 
52 protected:
53 
55 };
56 
57 #endif

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)