00001 #ifndef CDBROOCONVERSIONFWK_BDB_2_ROO_PAYLOAD_CONVERSION_FWK_HH
00002 #define CDBROOCONVERSIONFWK_BDB_2_ROO_PAYLOAD_CONVERSION_FWK_HH
00003
00004
00005
00006
00007 #include "CdbBase/CdbCPtr.hh"
00008
00009 #include <Rtypes.h>
00010
00011 #include <vector>
00012
00013 class CdbRooConverterBase;
00014 class CdbBdb2RooPayloadConvertersDict;
00015 class CdbRooConverterDict;
00016
00017
00018
00019
00020
00021 class CdbBdb2RooPayloadConversionFwk {
00022
00023 public:
00024
00025
00026
00027
00028
00029 static bool setVerbose( bool newModeFlag );
00030
00031
00032
00033
00034
00035 static bool setDebug( bool newModeFlag );
00036
00037
00038
00039
00040
00041 static bool setDoNotCompress( bool newModeFlag );
00042
00043
00044
00045
00046
00047
00048 static CdbStatus registerConverter( const CdbCPtr< CdbRooConverterBase >& thePtr );
00049 static CdbStatus registerConverters( const std::vector< CdbCPtr< CdbRooConverterDict > >& theDicts);
00050
00051
00052
00053
00054
00055 static CdbStatus testConversion( UShort_t theOriginId,
00056 UShort_t theConditionId,
00057 bool isPartitionableFlag,
00058 UShort_t thePartitionId,
00059 UShort_t theClusterId,
00060 UShort_t theIncrementId );
00061
00062
00063
00064
00065
00066 static CdbStatus testConversion( UShort_t theOriginId,
00067 const std::vector<UShort_t>& theConditionId,
00068 bool isPartitionableFlag,
00069 UShort_t thePartitionId,
00070 UShort_t theClusterId,
00071 UShort_t theIncrementId );
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089 static CdbStatus doConversion( const char* theDefinitionFileName );
00090
00091 private:
00092
00093
00094
00095
00096
00097
00098 static CdbStatus convertMetadata( UShort_t theOriginId,
00099 UShort_t theConditionId,
00100 bool isPartitionableFlag,
00101 UShort_t thePartitionId,
00102 UShort_t theClusterId,
00103 UShort_t theIncrementId );
00104
00105
00106
00107
00108
00109
00110 static CdbStatus convertMetadata( UShort_t theOriginId,
00111 const std::vector<UShort_t>& theConditionId,
00112 bool isPartitionableFlag,
00113 UShort_t thePartitionId,
00114 UShort_t theClusterId,
00115 UShort_t theIncrementId );
00116
00117
00118
00119 static CdbBdb2RooPayloadConvertersDict* regularConvertersDict( );
00120
00121
00122
00123 static CdbBdb2RooPayloadConvertersDict* mergingConvertersDict( );
00124
00125 private:
00126
00127 static bool verboseModeFlag;
00128 static bool debugModeFlag;
00129 static bool doNotCompressModeFlag;
00130 };
00131
00132 #endif // CDBROOCONVERSIONFWK_BDB_2_ROO_PAYLOAD_CONVERSION_FWK_HH