CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PrimitiveStreamer.h
Go to the documentation of this file.
1 #ifndef INCLUDE_ORA_PRIMITIVESTREAMER_H
2 #define INCLUDE_ORA_PRIMITIVESTREAMER_H
3 
4 #include "IRelationalStreamer.h"
5 // externals
7 
8 namespace ora {
9 
10  class MappingElement;
11  class DataElement;
12 
14 
15  public:
16 
17  PrimitiveStreamerBase( const edm::TypeWithDict& objectType, MappingElement& mapping );
18 
19  virtual ~PrimitiveStreamerBase();
20 
21  bool buildDataElement( DataElement& dataElement, IRelationalData& relationalData );
22 
23  void bindDataForUpdate( const void* data );
24 
25  void bindDataForRead( void* data );
26 
27  private:
28 
34  };
35 
37  public:
38  PrimitiveWriter( const edm::TypeWithDict& objectType, MappingElement& mapping );
39 
40  virtual ~PrimitiveWriter();
41 
42  bool build(DataElement& dataElement, IRelationalData& relationalData, RelationalBuffer& operationBuffer);
43 
44  void setRecordId( const std::vector<int>& identity );
45 
46  void write( int oid, const void* data );
47 
48  };
49 
50 
52  public:
53  PrimitiveUpdater( const edm::TypeWithDict& objectType, MappingElement& mapping );
54 
55  virtual ~PrimitiveUpdater();
56 
57  bool build(DataElement& dataElement, IRelationalData& relationalData, RelationalBuffer& operationBuffer);
58 
59  void setRecordId( const std::vector<int>& identity );
60 
61  void update( int oid, const void* data );
62 
63  };
64 
66  public:
67  PrimitiveReader( const edm::TypeWithDict& objectType, MappingElement& mapping );
68 
69  virtual ~PrimitiveReader();
70 
71  bool build(DataElement& dataElement, IRelationalData& relationalData );
72 
73  void select( int oid );
74 
75  void setRecordId( const std::vector<int>& identity );
76 
77  void read( void* data );
78 
79  void clear();
80 
81  };
82 
84  {
85  public:
86  PrimitiveStreamer( const edm::TypeWithDict& objectType, MappingElement& mapping );
87 
89 
91 
93 
95 
96  private:
99  };
100 
101 }
102 
103 
104 #endif
105 
106 
107 
IRelationalUpdater * newUpdater()
PrimitiveUpdater(const edm::TypeWithDict &objectType, MappingElement &mapping)
IRelationalWriter * newWriter()
bool buildDataElement(DataElement &dataElement, IRelationalData &relationalData)
IRelationalData * m_relationalData
PrimitiveWriter(const edm::TypeWithDict &objectType, MappingElement &mapping)
edm::TypeWithDict m_objectType
void setRecordId(const std::vector< int > &identity)
void write(int oid, const void *data)
Writes a data element.
MappingElement & m_mapping
void read(void *data)
Reads a data element.
PrimitiveStreamer(const edm::TypeWithDict &objectType, MappingElement &mapping)
void update(int oid, const void *data)
Updates a data element.
void bindDataForRead(void *data)
void setRecordId(const std::vector< int > &identity)
void bindDataForUpdate(const void *data)
bool build(DataElement &dataElement, IRelationalData &relationalData)
PrimitiveStreamerBase(const edm::TypeWithDict &objectType, MappingElement &mapping)
bool build(DataElement &dataElement, IRelationalData &relationalData, RelationalBuffer &operationBuffer)
IRelationalReader * newReader()
PrimitiveReader(const edm::TypeWithDict &objectType, MappingElement &mapping)
bool build(DataElement &dataElement, IRelationalData &relationalData, RelationalBuffer &operationBuffer)
edm::TypeWithDict m_objectType
void setRecordId(const std::vector< int > &identity)