CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
trklet::CleanTrackMemory Class Reference

#include <CleanTrackMemory.h>

Inheritance diagram for trklet::CleanTrackMemory:
trklet::MemoryBase

Public Member Functions

void addTrack (Tracklet *tracklet)
 
void clean () override
 
 CleanTrackMemory (std::string name, Settings const &settings, unsigned int iSector, double phimin, double phimax)
 
unsigned int nTracks () const
 
void writeCT (bool first)
 
 ~CleanTrackMemory () override=default
 
- Public Member Functions inherited from trklet::MemoryBase
void findAndReplaceAll (std::string &data, std::string toSearch, std::string replaceStr)
 
std::string getLastPartOfName () const
 
std::string const & getName () const
 
unsigned int initLayerDisk (unsigned int pos)
 
void initLayerDisk (unsigned int pos, int &layer, int &disk)
 
void initSpecialSeeding (unsigned int pos, bool &overlap, bool &extra, bool &extended)
 
 MemoryBase (std::string name, Settings const &settings, unsigned int iSector)
 
void openFile (bool first, std::string filebase)
 
virtual ~MemoryBase ()=default
 

Private Attributes

double phimax_
 
double phimin_
 
std::vector< Tracklet * > tracks_
 

Additional Inherited Members

- Static Public Member Functions inherited from trklet::MemoryBase
static size_t find_nth (const std::string &haystack, size_t pos, const std::string &needle, size_t nth)
 
- Protected Attributes inherited from trklet::MemoryBase
int bx_
 
int event_
 
unsigned int iSector_
 
std::string name_
 
std::ofstream out_
 
Settings const & settings_
 

Detailed Description

Definition at line 13 of file CleanTrackMemory.h.

Constructor & Destructor Documentation

◆ CleanTrackMemory()

CleanTrackMemory::CleanTrackMemory ( std::string  name,
Settings const &  settings,
unsigned int  iSector,
double  phimin,
double  phimax 
)

Definition at line 9 of file CleanTrackMemory.cc.

11  : MemoryBase(name, settings, iSector) {
12  phimin_ = phimin;
13  phimax_ = phimax;
14 }

References phimax, phimax_, phimin, and phimin_.

◆ ~CleanTrackMemory()

trklet::CleanTrackMemory::~CleanTrackMemory ( )
overridedefault

Member Function Documentation

◆ addTrack()

void trklet::CleanTrackMemory::addTrack ( Tracklet tracklet)
inline

Definition at line 19 of file CleanTrackMemory.h.

19 { tracks_.push_back(tracklet); }

References tracks_.

◆ clean()

void trklet::CleanTrackMemory::clean ( )
inlineoverridevirtual

Implements trklet::MemoryBase.

Definition at line 23 of file CleanTrackMemory.h.

23 { tracks_.clear(); }

References tracks_.

◆ nTracks()

unsigned int trklet::CleanTrackMemory::nTracks ( ) const
inline

Definition at line 21 of file CleanTrackMemory.h.

21 { return tracks_.size(); }

References tracks_.

◆ writeCT()

void CleanTrackMemory::writeCT ( bool  first)

Definition at line 16 of file CleanTrackMemory.cc.

16  {
17  std::ostringstream oss;
18  oss << "../data/MemPrints/CleanTrack/CleanTrack_" << getName() << "_" << std::setfill('0') << std::setw(2)
19  << (iSector_ + 1) << ".dat";
20  auto const& fname = oss.str();
21 
22  if (first) {
23  bx_ = 0;
24  event_ = 1;
25  out_.open(fname.c_str());
26  } else
27  out_.open(fname.c_str(), std::ofstream::app);
28 
29  out_ << "BX = " << (bitset<3>)bx_ << " Event : " << event_ << endl;
30 
31  for (unsigned int j = 0; j < tracks_.size(); j++) {
32  out_ << "0x";
33  out_ << std::setfill('0') << std::setw(2);
34  out_ << hex << j << dec << " ";
35  out_ << tracks_[j]->trackfitstr() << " " << trklet::hexFormat(tracks_[j]->trackfitstr());
36  out_ << "\n";
37  }
38  out_.close();
39 
40  // --------------------------------------------------------------
41  // print separately ALL cleaned tracks in single file
42  if (settings_.writeMonitorData("CT")) {
43  std::string fnameAll = "CleanTracksAll.dat";
44  if (first && getName() == "CT_L1L2" && iSector_ == 0)
45  out_.open(fnameAll.c_str());
46  else
47  out_.open(fnameAll.c_str(), std::ofstream::app);
48 
49  if (!tracks_.empty())
50  out_ << "BX= " << (bitset<3>)bx_ << " event= " << event_ << " seed= " << getName()
51  << " phisector= " << iSector_ + 1 << endl;
52 
53  for (unsigned int j = 0; j < tracks_.size(); j++) {
54  if (j < 16)
55  out_ << "0";
56  out_ << hex << j << dec << " ";
57  out_ << tracks_[j]->trackfitstr();
58  out_ << "\n";
59  }
60  out_.close();
61  }
62  // --------------------------------------------------------------
63 
64  bx_++;
65  event_++;
66  if (bx_ > 7)
67  bx_ = 0;
68 }

References trklet::MemoryBase::bx_, TauDecayModes::dec, trklet::MemoryBase::event_, dqmdumpme::first, alignmentValidation::fname, trklet::MemoryBase::getName(), trklet::hexFormat(), trklet::MemoryBase::iSector_, dqmiolumiharvest::j, trklet::MemoryBase::out_, trklet::MemoryBase::settings_, AlCaHLTBitMon_QueryRunRegistry::string, tracks_, and trklet::Settings::writeMonitorData().

Member Data Documentation

◆ phimax_

double trklet::CleanTrackMemory::phimax_
private

Definition at line 29 of file CleanTrackMemory.h.

Referenced by CleanTrackMemory().

◆ phimin_

double trklet::CleanTrackMemory::phimin_
private

Definition at line 28 of file CleanTrackMemory.h.

Referenced by CleanTrackMemory().

◆ tracks_

std::vector<Tracklet*> trklet::CleanTrackMemory::tracks_
private

Definition at line 30 of file CleanTrackMemory.h.

Referenced by addTrack(), clean(), nTracks(), and writeCT().

trklet::MemoryBase::settings_
Settings const & settings_
Definition: MemoryBase.h:50
phimin
float phimin
Definition: ReggeGribovPartonMCHadronizer.h:107
trklet::MemoryBase::event_
int event_
Definition: MemoryBase.h:48
trklet::MemoryBase::out_
std::ofstream out_
Definition: MemoryBase.h:46
trklet::MemoryBase::bx_
int bx_
Definition: MemoryBase.h:47
dqmdumpme.first
first
Definition: dqmdumpme.py:55
trklet::MemoryBase::getName
std::string const & getName() const
Definition: MemoryBase.h:19
trklet::CleanTrackMemory::phimin_
double phimin_
Definition: CleanTrackMemory.h:28
trklet::CleanTrackMemory::phimax_
double phimax_
Definition: CleanTrackMemory.h:29
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
trklet::CleanTrackMemory::tracks_
std::vector< Tracklet * > tracks_
Definition: CleanTrackMemory.h:30
trklet::MemoryBase::MemoryBase
MemoryBase(std::string name, Settings const &settings, unsigned int iSector)
Definition: MemoryBase.cc:11
phimax
float phimax
Definition: ReggeGribovPartonMCHadronizer.h:106
alignmentValidation.fname
string fname
main script
Definition: alignmentValidation.py:959
trklet::Settings::writeMonitorData
bool writeMonitorData(std::string module) const
Definition: Settings.h:86
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
trklet::hexFormat
std::string hexFormat(const std::string &binary)
Definition: Util.h:14
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
TauDecayModes.dec
dec
Definition: TauDecayModes.py:143
trklet::MemoryBase::iSector_
unsigned int iSector_
Definition: MemoryBase.h:44