CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TBufferBlobStreamingService.h
Go to the documentation of this file.
1 #ifndef CondCore_DBCommon_TBufferBlobStreamer_h
2 #define CondCore_DBCommon_TBufferBlobStreamer_h
3 
5 //
6 #include <cstddef>
7 //
8 #include "CoralBase/Blob.h"
9 #include "Reflex/Type.h"
10 #include "TClass.h"
11 
12 namespace cond {
14  public:
16 
18  std::size_t m_arraySize;
19 
21  TClass *m_class;
22 
24  unsigned int m_primitive;
25  };
26 
28  public:
30 
32 
33  boost::shared_ptr<coral::Blob> write( const void* addressOfInputData, Reflex::Type const & classDictionary, bool useCompression=false );
34 
35  void read( const coral::Blob& blobData, void* addressOfContainer, Reflex::Type const & classDictionary );
36 
37  };
38 
39 }
40 
41 #endif // COND_TBUFFERBLOBSTREAMER_H
type
Definition: HCALResponse.h:22
std::size_t m_arraySize
length of the plain C array (zero otherwise)
TClass * m_class
The class as seen by the ROOT streaming services.
void read(const coral::Blob &blobData, void *addressOfContainer, Reflex::Type const &classDictionary)
Reads an object from a Blob and fills-in the container.
unsigned int m_primitive
the primitive C++ type if m_class is unset
TBufferBlobTypeInfo(const Reflex::Type &type)
boost::shared_ptr< coral::Blob > write(const void *addressOfInputData, Reflex::Type const &classDictionary, bool useCompression=false)
Interface for a Streaming Service.