#ifndef CPRWIREPAR_HH #define CPRWIREPAR_HH /**************************************************************** File and Version Information : CprWirePar class - functions to set and access some of the parameters to build the wire collection Author: Tania Moulik (created) Revision History : Adding wire collection strategy flag wireCollStrat to choose between track based or seed based wire clustering *****************************************************************/ //--------------- // C++ Headers -- //--------------- #include //------------------------------- // Collaborating Class Headers -- //------------------------------- #include "BaBar/Experiment.hh" #include "Framework/AbsParmGeneral.hh" //---------------------------------- // Forward Declaration of Classes -- //---------------------------------- class AppModule; // Declare the class class CprWirePar { public: friend class CprClusterModule; friend class CprClusterTest; friend class CprNtpMaker; friend class CprWireCollectionMaker; friend class SoftElectronModule; friend class StntupleMakerModule; CprWirePar(AppModule* theModule); ~CprWirePar() { }; // use default destructor /*===========================================================================*\ * Parameter accessor functions * \*===========================================================================*/ double seedThrs() const; double wireThrs() const; bool printWires() const; int numberWires() const; double ptcut_track() const; double etamin_track() const; double etamax_track() const; double cesenergycut() const; int wirecollstrat() const; void setSeedThrs(double par); void setWireThrs(double par); void setPrintWires(bool par); void setNumberWires(int par); void setPtcut_track(double par); void setEtamin_track(double par); void setEtamax_track(double par); void setCesenergycut(double par); void setWirecollstrat(int par); /*===========================================================================*\ * Additional functions to make class functional * \*===========================================================================*/ void print( void ) const; /*===========================================================================*\ * Operator overloads * \*===========================================================================*/ /*===========================================================================*\ * Data members of class * \*===========================================================================*/ private: AbsParmGeneral _seedThrsParam; // Min E for seed AbsParmGeneral _wireThrsParam; // Min E for wires AbsParmGeneral _printWiresParam; // Print wires info/hists? AbsParmGeneral _numberWiresParam; AbsParmGeneral _ptcutParam; AbsParmGeneral _etaminParam; AbsParmGeneral _etamaxParam; AbsParmGeneral _wirecollstratParam; AbsParmGeneral _cesenergycutParam; AbsParmGeneral _useCPRQ; }; /*===========================================================================*\ * Inline functions * \*===========================================================================*/ /****************************************************************************** * Parameter accessor functions * * Return the value of the corresponding data member * *****************************************************************************/ inline double CprWirePar::seedThrs( void ) const { return _seedThrsParam.value(); } inline double CprWirePar::wireThrs( void ) const { return _wireThrsParam.value(); } inline bool CprWirePar::printWires( void ) const { return _printWiresParam.value(); } inline int CprWirePar::numberWires( void ) const { return _numberWiresParam.value(); } inline double CprWirePar::ptcut_track(void) const { return _ptcutParam.value(); } inline double CprWirePar::etamin_track( void ) const { return _etaminParam.value(); } inline double CprWirePar::etamax_track( void ) const { return _etamaxParam.value(); } inline int CprWirePar::wirecollstrat(void) const { return _wirecollstratParam.value(); } inline double CprWirePar::cesenergycut(void) const { return _cesenergycutParam.value(); } inline void CprWirePar::setSeedThrs(double par) { _seedThrsParam.set(par); } inline void CprWirePar::setWireThrs(double par) { _wireThrsParam.set(par); } inline void CprWirePar::setPrintWires(bool par) { _printWiresParam.set(par); } inline void CprWirePar::setNumberWires(int par) { _numberWiresParam.set(par); } inline void CprWirePar::setPtcut_track(double par) { _ptcutParam.set(par); } inline void CprWirePar::setEtamin_track(double par) { _etaminParam.set(par); } inline void CprWirePar::setEtamax_track(double par) { _etamaxParam.set(par); } inline void CprWirePar::setCesenergycut(double par) { _cesenergycutParam.set(par); } inline void CprWirePar::setWirecollstrat(int par) { _wirecollstratParam.set(par); } #endif