00001 // $Id: ClusterLHCbIDCnv.h,v 1.1.1.1 2005/04/01 16:18:50 erodrigu Exp $ 00002 #ifndef TRACKTOOLS_CLUSTERLHCBIDCNV_H 00003 #define TRACKTOOLS_CLUSTERLHCBIDCNV_H 1 00004 00005 // Include files 00006 // ------------- 00007 // from Gaudi 00008 #include "GaudiAlg/GaudiTool.h" 00009 00010 #include "Kernel/LHCbID.h" 00011 #include "Event/OTTime.h" 00012 #include "Event/ITCluster.h" 00013 #include "Event/VeloCluster.h" 00014 00015 00016 static const InterfaceID IID_ClusterLHCbIDCnv ( "ClusterLHCbIDCnv", 1, 0 ); 00017 00025 class ClusterLHCbIDCnv : public GaudiTool { 00026 public: 00027 const OTTime& otTime( const LHCbID& id ); 00028 const ITCluster& itCluster( const LHCbID& id ); 00029 const VeloCluster& veloCluster( const LHCbID& id ); 00030 00031 LHCbID lhcbid( const OTTime& otTime ); 00032 LHCbID lhcbid( const ITCluster& itCluster ); 00033 LHCbID lhcbid( const VeloCluster& veloCluster ); 00034 00035 // Return the interface ID 00036 static const InterfaceID& interfaceID() { return IID_ClusterLHCbIDCnv; } 00037 00039 ClusterLHCbIDCnv( const std::string& type, 00040 const std::string& name, 00041 const IInterface* parent); 00042 00043 virtual ~ClusterLHCbIDCnv( ); 00044 00045 protected: 00046 00047 private: 00048 00049 }; 00050 #endif // TRACKTOOLS_CLUSTERLHCBIDCNV_H