/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

RecRpcTrigger.h
Go to the documentation of this file.
00001 
00002 //   **************************************************************************
00003 //   *                                                                        *
00004 //   *                      ! ! ! A T T E N T I O N ! ! !                     *
00005 //   *                                                                        *
00006 //   *  This file was created automatically by GaudiObjDesc, please do not    *
00007 //   *  delete it or edit it by hand.                                         *
00008 //   *                                                                        *
00009 //   *  If you want to change this file, first change the corresponding       *
00010 //   *  xml-file and rerun the tools from GaudiObjDesc (or run make if you    *
00011 //   *  are using it from inside a Gaudi-package).                            *
00012 //   *                                                                        *
00013 //   **************************************************************************
00014 
00015 #ifndef RecEvent_RecRpcTrigger_H
00016 #define RecEvent_RecRpcTrigger_H 1
00017 
00018 // Include files
00019 #include "Event/RecRpcCluster.h"
00020 #include "Event/RecRpcTrack.h"
00021 #include "Conventions/Detectors.h"
00022 #include "Context/TimeStamp.h"
00023 #include "Conventions/Trigger.h"
00024 #include "GaudiKernel/boost_allocator.h"
00025 #include "GaudiKernel/SerializeSTL.h"
00026 #include <ostream>
00027 
00028 // Forward declarations
00029 
00030 namespace DayaBay 
00031 {
00032 
00033   // Forward declarations
00034   class RecRpcHeader;
00035   using GaudiUtils::operator<<;
00036   
00037 
00047   class RecRpcTrigger
00048   {
00049   public:
00050 
00052   RecRpcTrigger(const RecRpcTrigger& obj);
00053   
00055     RecRpcTrigger() : m_detector(0),
00056                       m_triggerNumber(0),
00057                       m_triggerTime(0),
00058                       m_triggerType(DayaBay::Trigger::kUnknown),
00059                       m_combinationType(0),
00060                       m_eventType(0),
00061                       m_clusters(),
00062                       m_tracks(),
00063                       m_header(0) {}
00064   
00066   virtual ~RecRpcTrigger();
00067   
00069    virtual std::ostream& fillStream(std::ostream& s) const;
00070   
00072     RecRpcTrigger& operator=(const RecRpcTrigger& obj);
00073   
00075     unsigned int combinationType() const;
00076   
00078     const DayaBay::RecRpcCluster* getCluster(int index) const;
00079   
00081     void addCluster(const DayaBay::RecRpcCluster* cluster);
00082   
00084     int numCluster() const;
00085   
00087     const DayaBay::RecRpcTrack& getTrack(int index) const;
00088   
00090     void addTrack(const DayaBay::RecRpcTrack& track);
00091   
00093     int numTrack() const;
00094   
00096     int maxHitsInLayer() const;
00097   
00099     bool is4of4() const;
00100   
00103   const DayaBay::Detector& detector() const;
00104   
00107   void setDetector(const DayaBay::Detector& value);
00108   
00111   unsigned int triggerNumber() const;
00112   
00115   void setTriggerNumber(unsigned int value);
00116   
00119   const TimeStamp& triggerTime() const;
00120   
00123   void setTriggerTime(const TimeStamp& value);
00124   
00127   const DayaBay::Trigger::TriggerType_t& triggerType() const;
00128   
00131   void setTriggerType(const DayaBay::Trigger::TriggerType_t& value);
00132   
00135   unsigned int eventType() const;
00136   
00139   void setEventType(unsigned int value);
00140   
00143   const std::vector<const DayaBay::RecRpcCluster*>& clusters() const;
00144   
00147   const std::vector<DayaBay::RecRpcTrack>& tracks() const;
00148   
00151   const DayaBay::RecRpcHeader* header() const;
00152   
00155   void setHeader(DayaBay::RecRpcHeader* value);
00156   
00157   
00158   #ifndef GOD_NOALLOC
00159 
00160     static void* operator new ( size_t size )
00161     {
00162       return ( sizeof(RecRpcTrigger) == size ? 
00163                boost::singleton_pool<RecRpcTrigger, sizeof(RecRpcTrigger)>::malloc() :
00164                ::operator new(size) );
00165     }
00166   
00170     static void* operator new ( size_t size, void* pObj )
00171     {
00172       return ::operator new (size,pObj);
00173     }
00174   
00176     static void operator delete ( void* p )
00177     {
00178       boost::singleton_pool<RecRpcTrigger, sizeof(RecRpcTrigger)>::is_from(p) ?
00179       boost::singleton_pool<RecRpcTrigger, sizeof(RecRpcTrigger)>::free(p) :
00180       ::operator delete(p);
00181     }
00182   
00185     static void operator delete ( void* p, void* pObj )
00186     {
00187       ::operator delete (p, pObj);
00188     }
00189   #endif
00190   protected:
00191 
00192   private:
00193 
00194     DayaBay::Detector                          m_detector;        
00195     unsigned int                               m_triggerNumber;   
00196     TimeStamp                                  m_triggerTime;     
00197     DayaBay::Trigger::TriggerType_t            m_triggerType;     
00198     unsigned int                               m_combinationType; 
00199     unsigned int                               m_eventType;       
00200     std::vector<const DayaBay::RecRpcCluster*> m_clusters;        
00201     std::vector<DayaBay::RecRpcTrack>          m_tracks;          
00202     DayaBay::RecRpcHeader*                     m_header;          
00203   
00204   }; // class RecRpcTrigger
00205 
00206   inline std::ostream& operator<< (std::ostream& str, const RecRpcTrigger& obj)
00207   {
00208     return obj.fillStream(str);
00209   }
00210   
00211 } // namespace DayaBay;
00212 
00213 // -----------------------------------------------------------------------------
00214 // end of class
00215 // -----------------------------------------------------------------------------
00216 
00217 // Including forward declarations
00218 #include "RecRpcHeader.h"
00219 
00220 
00221 inline std::ostream& DayaBay::RecRpcTrigger::fillStream(std::ostream& s) const
00222 {
00223   s << "{ " << "detector :      " << m_detector << std::endl
00224             << "triggerNumber : " << m_triggerNumber << std::endl
00225             << "triggerTime :   " << m_triggerTime << std::endl
00226             << "triggerType :   " << m_triggerType << std::endl
00227             << "combinationType :       " << m_combinationType << std::endl
00228             << "eventType :     " << m_eventType << std::endl
00229             << "clusters :      " << m_clusters << std::endl
00230             << "tracks :        " << m_tracks << std::endl
00231             << "header :        " << m_header << std::endl << " }";
00232   return s;
00233 }
00234 
00235 
00236 inline const DayaBay::Detector& DayaBay::RecRpcTrigger::detector() const 
00237 {
00238   return m_detector;
00239 }
00240 
00241 inline void DayaBay::RecRpcTrigger::setDetector(const DayaBay::Detector& value) 
00242 {
00243   m_detector = value;
00244 }
00245 
00246 inline unsigned int DayaBay::RecRpcTrigger::triggerNumber() const 
00247 {
00248   return m_triggerNumber;
00249 }
00250 
00251 inline void DayaBay::RecRpcTrigger::setTriggerNumber(unsigned int value) 
00252 {
00253   m_triggerNumber = value;
00254 }
00255 
00256 inline const TimeStamp& DayaBay::RecRpcTrigger::triggerTime() const 
00257 {
00258   return m_triggerTime;
00259 }
00260 
00261 inline void DayaBay::RecRpcTrigger::setTriggerTime(const TimeStamp& value) 
00262 {
00263   m_triggerTime = value;
00264 }
00265 
00266 inline const DayaBay::Trigger::TriggerType_t& DayaBay::RecRpcTrigger::triggerType() const 
00267 {
00268   return m_triggerType;
00269 }
00270 
00271 inline void DayaBay::RecRpcTrigger::setTriggerType(const DayaBay::Trigger::TriggerType_t& value) 
00272 {
00273   m_triggerType = value;
00274 }
00275 
00276 inline unsigned int DayaBay::RecRpcTrigger::eventType() const 
00277 {
00278   return m_eventType;
00279 }
00280 
00281 inline void DayaBay::RecRpcTrigger::setEventType(unsigned int value) 
00282 {
00283   m_eventType = value;
00284 }
00285 
00286 inline const std::vector<const DayaBay::RecRpcCluster*>& DayaBay::RecRpcTrigger::clusters() const 
00287 {
00288   return m_clusters;
00289 }
00290 
00291 inline const std::vector<DayaBay::RecRpcTrack>& DayaBay::RecRpcTrigger::tracks() const 
00292 {
00293   return m_tracks;
00294 }
00295 
00296 inline const DayaBay::RecRpcHeader* DayaBay::RecRpcTrigger::header() const 
00297 {
00298   return m_header;
00299 }
00300 
00301 inline void DayaBay::RecRpcTrigger::setHeader(DayaBay::RecRpcHeader* value) 
00302 {
00303   m_header = value;
00304 }
00305 
00306 
00307 #endif ///RecEvent_RecRpcTrigger_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 10:00:28 for RecEvent by doxygen 1.7.4