/search.css" rel="stylesheet" type="text/css"/> /search.js">
00001 00010 #ifndef USERDATACNV_H 00011 #define USERDATACNV_H 00012 00013 #include "RootIOSvc/RootIOUserData.h" 00014 #include "RootIOSvc/RootIOTypedCnv.h" 00015 00016 #include "PerBaseEvent/PerHeaderObject.h" 00017 00018 #include "Event/UserDataHeader.h" 00019 00020 class UserDataCnv : public RootIOTypedCnv<PerHeaderObject, 00021 DayaBay::UserDataHeader> 00022 { 00023 public: 00024 static const CLID& classID() { 00025 return DayaBay::CLID_UserDataHeader; 00026 } 00027 00028 UserDataCnv(ISvcLocator* svc); 00029 virtual ~UserDataCnv(); 00030 00031 00034 StatusCode PerToTran(const PerHeaderObject& tobj, 00035 DayaBay::UserDataHeader& dobj); 00036 00039 StatusCode TranToPer(const DayaBay::UserDataHeader& dobj, 00040 PerHeaderObject& tobj); 00041 00042 StatusCode fillRepRefs(IOpaqueAddress* addr, DataObject* dobj); 00043 StatusCode fillObjRefs(IOpaqueAddress* addr, DataObject* dobj); 00044 00045 private: 00046 00047 StatusCode InitializeProxies(const DayaBay::UserDataHeader& udh, 00048 RootIOUserData::ProxyCollection& proxies); 00049 }; 00050 00051 #endif // USERDATACNV_H