00001 00011 #ifndef STI_TPC_IS_ACTIVE_FUNCTOR 00012 #define STI_TPC_IS_ACTIVE_FUNCTOR 00013 #include "Sti/StiIsActiveFunctor.h" 00014 00018 class StiTpcIsActiveFunctor : public StiIsActiveFunctor 00019 { 00020 public: 00021 StiTpcIsActiveFunctor(Bool_t active=kTRUE, Bool_t west=kTRUE, Bool_t east=kTRUE) : 00022 StiIsActiveFunctor(active,kTRUE), _eastActive(east), _westActive(west) {} 00023 virtual ~StiTpcIsActiveFunctor() {} 00024 virtual Bool_t operator()(Double_t /* dYlocal */, Double_t /* dZlocal */) const {return isActive();} 00025 // correct version not swiched on yet 00026 //Bool_t operator()(Double_t /* dYlocal */, Double_t dZlocal) const 00027 // {if (dZlocal<-1) return _eastActive; 00028 // if (dZlocal> 1) return _westActive; 00029 // if return _eastActive || _westActive;} 00030 virtual Bool_t isActive() const {return _active && (_eastActive || _westActive);} 00031 virtual Bool_t isEastActive() const {return _eastActive;} 00032 virtual Bool_t isWestActive() const {return _westActive;} 00033 void setEastActive(Bool_t value) {_eastActive = value;} 00034 void setWestActive(Bool_t value) {_westActive = value;} 00035 00036 protected: 00038 Bool_t _eastActive; 00040 Bool_t _westActive; 00041 }; 00042 #endif // ifndef STI_TPC_IS_ACTIVE_FUNCTOR
1.5.9