Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

ITrackSelector.h

Go to the documentation of this file.
00001 #ifndef TRACKTOOLS_ITRACKSELECTOR_H 
00002 #define TRACKTOOLS_ITRACKSELECTOR_H 1
00003 
00004 // from Gaudi
00005 #include "GaudiKernel/IAlgTool.h"
00006 
00007 class MCParticle;
00008 class Track;
00009 
00018 static const InterfaceID IID_ITrackSelector( "ITrackSelector", 1, 0 );
00019 
00020 class ITrackSelector : virtual public IAlgTool
00021 {
00022 public:
00024   static const InterfaceID& interfaceID() { return IID_ITrackSelector; }
00025 
00026   virtual bool select( Track* track ) const = 0;
00027   virtual bool select( MCParticle* mcParticle ) = 0;
00028 
00029   virtual bool selectTrackType( Track* track ) const = 0;
00030   virtual bool selectTrackType( MCParticle* mcParticle ) = 0;
00031 
00032   virtual int  getTrackType( Track* track ) const = 0;
00033   virtual int  getTrackType( MCParticle* mcPart ) = 0;
00034 
00035   virtual StatusCode setTrackType( const int tracktype, 
00036                                    Track*& track ) const = 0;
00037   virtual StatusCode setTrackType( MCParticle* mcPart,
00038                                    Track*& track ) = 0;
00039 
00040 };
00041 
00042 #endif // TRACKTOOLS_ITRACKSELECTOR_H

Generated on Wed May 4 11:52:34 2005 for New Track Event Model by doxygen 1.4.1