CMS 3D CMS Logo

Public Member Functions | Private Attributes | Static Private Attributes

LaserSorter::OutStreamRecord Class Reference

List of all members.

Public Member Functions

std::set< uint32_t > & excludedOrbit ()
int fedId () const
std::string finalFileName () const
std::vector< IndexRecord > * indices ()
std::ofstream * out () const
 OutStreamRecord (int fedId__, edm::LuminosityBlockNumber_t startingLumiBlock__, std::ofstream *out__, std::string &tmpFileName__, std::string &finalFileName__)
edm::LuminosityBlockNumber_t startingLumiBlock () const
std::string tmpFileName () const

Private Attributes

std::set< uint32_t > excludedOrbit_
int fedId_
std::string finalFileName_
bool indexError_
std::vector< IndexRecordindices_
std::auto_ptr< std::ofstream > out_
edm::LuminosityBlockNumber_t startingLumiBlock_
std::string tmpFileName_

Static Private Attributes

static std::string emptyString_
static size_t indexReserve_ = 2000

Detailed Description

Definition at line 53 of file LaserSorter.h.


Constructor & Destructor Documentation

LaserSorter::OutStreamRecord::OutStreamRecord ( int  fedId__,
edm::LuminosityBlockNumber_t  startingLumiBlock__,
std::ofstream *  out__,
std::string &  tmpFileName__,
std::string &  finalFileName__ 
) [inline]

Definition at line 56 of file LaserSorter.h.

References indexReserve_, and indices_.

                                               :
      fedId_(fedId__),
      startingLumiBlock_(startingLumiBlock__),
      out_(out__),
      tmpFileName_(tmpFileName__), finalFileName_(finalFileName__),
      indexError_(false){
      indices_.reserve(indexReserve_);
    }

Member Function Documentation

std::set<uint32_t>& LaserSorter::OutStreamRecord::excludedOrbit ( ) [inline]

Gets the list of orbits to skip. Used to update an existing file: orbits of events already present in the file are excluded.

Returns:
the list of orbits to skip.

Definition at line 83 of file LaserSorter.h.

References excludedOrbit_.

Referenced by LaserSorter::analyze(), and LaserSorter::readIndexTable().

{ return excludedOrbit_; }   
int LaserSorter::OutStreamRecord::fedId ( ) const [inline]

Definition at line 69 of file LaserSorter.h.

References fedId_.

{ return fedId_; }
std::string LaserSorter::OutStreamRecord::finalFileName ( ) const [inline]

Definition at line 74 of file LaserSorter.h.

References finalFileName_.

Referenced by LaserSorter::analyze().

{ return finalFileName_; }
std::vector<IndexRecord>* LaserSorter::OutStreamRecord::indices ( ) [inline]

Definition at line 76 of file LaserSorter.h.

References indices_.

Referenced by LaserSorter::readIndexTable(), and LaserSorter::writeEvent().

{ return &indices_; }
std::ofstream* LaserSorter::OutStreamRecord::out ( ) const [inline]

Definition at line 73 of file LaserSorter.h.

References out_.

Referenced by LaserSorter::writeEvent().

{ return out_.get(); }
edm::LuminosityBlockNumber_t LaserSorter::OutStreamRecord::startingLumiBlock ( ) const [inline]

Definition at line 70 of file LaserSorter.h.

References startingLumiBlock_.

Referenced by LaserSorter::analyze().

                                                        {
      return startingLumiBlock_; 
    } 
std::string LaserSorter::OutStreamRecord::tmpFileName ( ) const [inline]

Definition at line 75 of file LaserSorter.h.

References tmpFileName_.

{ return tmpFileName_; }

Member Data Documentation

std::string LaserSorter::OutStreamRecord::emptyString_ [static, private]

Definition at line 91 of file LaserSorter.h.

std::set<uint32_t> LaserSorter::OutStreamRecord::excludedOrbit_ [private]

List of orbits to skip. Used to update an existing file: orbits of events already present in the file are excluded.

Definition at line 102 of file LaserSorter.h.

Referenced by excludedOrbit().

Definition at line 86 of file LaserSorter.h.

Referenced by fedId().

Definition at line 90 of file LaserSorter.h.

Referenced by finalFileName().

Used to invalidate index table in case a problem preventing indexing is encountered: in principle non unicity of the orbit id.

Definition at line 107 of file LaserSorter.h.

size_t LaserSorter::OutStreamRecord::indexReserve_ = 2000 [static, private]

Initial memory allocation for index table (see vector::reserve()).

Definition at line 111 of file LaserSorter.h.

Referenced by OutStreamRecord().

Index table. This map is used to index the events in the file according to their orbit id. An index table is stored at the end of the output files.

Definition at line 97 of file LaserSorter.h.

Referenced by indices(), and OutStreamRecord().

std::auto_ptr<std::ofstream> LaserSorter::OutStreamRecord::out_ [private]

Definition at line 88 of file LaserSorter.h.

Referenced by out().

Definition at line 87 of file LaserSorter.h.

Referenced by startingLumiBlock().

Definition at line 89 of file LaserSorter.h.

Referenced by tmpFileName().