CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MappingGenerator.h
Go to the documentation of this file.
1 #ifndef INCLUDE_ORA_MAPPINGGENERATOR_H
2 #define INCLUDE_ORA_MAPPINGGENERATOR_H
3 
4 #include "TableRegister.h"
5 //
6 #include <string>
7 #include <vector>
8 #include <map>
9 #include <set>
10 
11 namespace Reflex{
12  class Type;
13 }
14 
15 namespace coral {
16  class ISchema;
17 }
18 
19 namespace ora {
20 
21  class MappingTree;
22 
24 
25  public:
27  explicit MappingGenerator( coral::ISchema& schema );
28 
31 
32  void createNewMapping( const std::string& containerName, const Reflex::Type& classDictionary, MappingTree& destination );
33 
34  void createNewMapping( const std::string& containerName, const Reflex::Type& classDictionary,
35  const MappingTree& baseMapping, MappingTree& destination );
36 
37  void createNewDependentMapping( const Reflex::Type& dependentClassDictionary, const MappingTree& parentClassMapping,
38  MappingTree& destination );
39 
40  void createNewDependentMapping( const Reflex::Type& dependentClassDictionary, const MappingTree& parentClassMapping,
41  const MappingTree& dependentClassBaseMapping, MappingTree& destination );
42 
43  private:
44  coral::ISchema& m_schema;
46 
47  };
48 
49 }
50 
51 #endif
MappingGenerator(coral::ISchema &schema)
Constructor.
coral::ISchema & m_schema
void createNewDependentMapping(const Reflex::Type &dependentClassDictionary, const MappingTree &parentClassMapping, MappingTree &destination)
~MappingGenerator()
Destructor.
void createNewMapping(const std::string &containerName, const Reflex::Type &classDictionary, MappingTree &destination)
TableRegister m_tableRegister