CDF II
CDF KITS
source navigation ]
diff markup ]
identifier search ]
freetext search ]
file search ]
 
Architecture: i386 ]
Version: 4.10.4 ] [ 4.10.5 ] [ 4.8.4 ] [ 4.8.4l3s ] [ 4.8.5 ] [ 4.9.0 ] [ 4.9.1 ] [ 4.9.1.hpt3 ] [ 4.9.1hpt3 ] [ 4.9.1top1 ] [ 5.0.0 ] [ 5.1.0 ] [ 5.1.0beamonly ] [ 5.1.1 ] [ 5.2.0 ] [ 5.3.0 ] [ 5.3.1 ] [ 5.3.1dsp ] [ 5.3.3 ] [ 5.3.3_nt ] [ 5.3.4 ] [ 6.1.1 ] [ 6.1.1b ] [ 6.1.2 ] [ 6.1.3 ] [ 6.1.4 ] [ 6.1.4int3 ] [ 6.1.4mc ] [ 6.1.4mc_a ] [ 6.1.6 ] [ development ]

001 //--------------------------------------------------------------------------
002 // File and Version Information:
003 //      $Id: AbsEnv.hh,v 1.31 2003/04/18 19:31:17 sexton Exp $
004 //
005 // Description:
006 //      Class AbsEnv
007 //
008 //      Top level of the "environment tree" for CDF reconstruction
009 //      software
010 //
011 // Author List:
012 //      Bob Jacobsen                    Original Author
013 //      Liz Sexton-Kennedy              Modified for use by CDF
014 //
015 //------------------------------------------------------------------------
016 
017 #ifndef ABSENV_HH
018 #define ABSENV_HH
019 
020 //------------------------------------
021 // Collaborating Class Declarations --
022 //------------------------------------
023 #include <string>
024 #include "EdmUtilities/RecordType.hh"
025 
026 class APPInputModule;
027 class AbsEvent;
028 class RunSectionRanges;
029 
030 #ifndef __CINT__
031 typedef long long int8;
032 #endif
033 //              ---------------------
034 //              -- Class Interface --
035 //              ---------------------
036  
037 class AbsEnv {
038 
039       friend class APPInputModule; // input modules fill this class
040 
041 public:
042   
043       // Destructor
044       virtual ~AbsEnv( );
045 
046       // Normal member functions
047       int runNumber() const;
048       int trigNumber() const;
049       int numberOfRS() const;
050 #ifndef __CINT__
051       int8 runSection() const;
052 #endif
053       int sectionNumber() const;
054       bool monteFlag() const;
055       int runType() const;
056       
057       edm::RecordType currentRecordType() const;
058       std::string dataOrigin() const;
059       int fdPipe() const;
060       int numberOfEvInRun( ) const;
061       const RunSectionRanges* inputRSRanges() const;
062 
063       // Static member functions
064       static AbsEnv*   instance( );
065 
066       static AbsEvent* theJobRecord( );
067       static AbsEvent* theRunRecord( );
068       static AbsEvent* theEvent( );
069 
070       const char*  rcsId( ) const;
071 
072 private:
073       // Constructors
074       AbsEnv();
075 
076 //  These member functions are private because only the input module
077 //  should be able to set them.
078       void setRunNumber(const int runNumber);
079       void setTrigNumber(const int trigNumber);
080       void setMonteFlag(const bool monteFlag);
081       void setRunType(const int runType);
082       void setCurrentRecordType(const edm::RecordType type);
083 #ifndef __CINT__
084       void setRunSection(const int8 runSection);
085 #endif
086       void setOrigin(const std::string origin);
087       void setInputRSRanges(RunSectionRanges* inFileRSs);
088       void setFdPipe(const int fdPipe);
089       void setNumberOfRS( const int nRS );
090       void setNumberOfEventsInRun( const int nEv );
091       void setEventPointer(AbsEvent* currentEvent);
092       void setBeginPointer(AbsEvent* currentBegin);
093       void setJobPointer  (AbsEvent* currentJob);
094 
095       
096       int  _runNumber;
097       int  _trigNumber;
098       bool _monteFlag;
099       int  _runType;
100       edm::RecordType _currentRecType;
101 #ifndef __CINT__
102       int8 _runSection;
103 #endif
104       std::string  _origin;
105       int _fdPipe;
106       int _numberOfRS;
107       // This will be left null for other types of input (see origin)
108       RunSectionRanges* _inputRSRanges;
109 
110       int _nEventsInRun;  // But only for the currently open file...
111       
112       static AbsEnv*   _theAbsEnv;
113 
114       static AbsEvent* _theEvent;
115       static AbsEvent* _theRunRecord;
116       static AbsEvent* _theJobRecord;
117 };
118 
119 
120 //-------------------------
121 // global pointer to env --
122 //-------------------------
123 
124 extern AbsEnv* gblEnv;
125 
126 #endif // ABSENV_HH
127 

source navigation ] diff markup ] identifier search ] freetext search ] file search ]

This page was automatically generated by the LXR engine.
The LXR team
Valid HTML 4.01!

Send problems or questions to cdfcode@fnal.gov