CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
BeamSpotDipServer Class Reference

#include <BeamSpotDipServer.h>

Inheritance diagram for BeamSpotDipServer:
DQMOneLumiEDAnalyzer<> DQMOneEDAnalyzer< edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, Args... > edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 BeamSpotDipServer (const edm::ParameterSet &)
 
- Public Member Functions inherited from DQMOneLumiEDAnalyzer<>
void accumulate (edm::Event const &event, edm::EventSetup const &setup) override
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
 DQMOneLumiEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final
 
void endLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup) final
 
bool getCanSaveByLumi () override
 
- Public Member Functions inherited from DQMOneEDAnalyzer< edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, Args... >
void accumulate (edm::Event const &event, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
 DQMOneEDAnalyzer ()
 
void endRun (edm::Run const &, edm::EventSetup const &) final
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) final
 
- Public Member Functions inherited from edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... >
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const * > *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, const edm::Run &, const edm::EventSetup &) override
 
void dqmBeginLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &) override
 
void dqmBeginRun (const edm::Run &r, const edm::EventSetup &) override
 
void dqmEndLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &) override
 
void dqmEndRun (const edm::Run &, const edm::EventSetup &iSetup) override
 
- Protected Member Functions inherited from edm::ProducerBase
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 declare what type of product will make and with which optional label More...
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Private Member Functions

void CMS2LHCRF_POS (float x, float y, float z)
 
void fakeRcd ()
 
std::string getDateTime ()
 
std::string getDateTime (long epoch)
 
long getFileSize (std::string filename)
 
time_t getLastTime (std::string filename)
 
std::vector< std::string > parse (std::string line, const std::string &delimiter)
 
void problem ()
 
void publishRcd (std::string qlty, std::string err, bool pubCMS, bool fitTime)
 
bool readRcd (const BeamSpotOnlineObjects &bs)
 
bool readRcd (std::ifstream &file)
 
std::string tkStatus ()
 
void trueRcd ()
 

Private Attributes

std::bitset< 8 > alive
 
edm::ESGetToken< BeamSpotOnlineObjects, BeamSpotOnlineLegacyObjectsRcdbsLegacyToken_
 
float Centroid [3]
 
const int cm2mm = 10
 
const int cm2um = 10000
 
int currentLS = 0
 
edm::InputTag dcsRecordInputTag_
 
edm::EDGetTokenT< DCSRecorddcsRecordToken_
 
DipFactory * dip
 
float dxdz = 0
 
float dydz = 0
 
std::string endTime = getDateTime()
 
time_t endTimeStamp = 0
 
float err_dxdz = 0
 
float err_dydz = 0
 
float err_meanPV = 0
 
float err_rmsPV = 0
 
float err_sigma_z = 0
 
float err_width_x = 0
 
float err_width_y = 0
 
float err_x = 0
 
float err_y = 0
 
float err_z = 0
 
int events = 0
 
const int intLS = 1
 
long lastFitTime = 0
 
int lastlumi = -1
 
long lastModTime = 0
 
int lsCount = 0
 
std::string lumiRange = "0 - 0"
 
int maxPV = 0
 
float meanPV = 0
 
DipData * messageCMS
 
DipData * messageLHC
 
DipData * messagePV
 
int nPV = 0
 
DipPublication * publicationCMS
 
DipPublication * publicationLHC
 
DipPublication * publicationPV
 
const bool publishStatErrors = true
 
const char * qualities [3] = {"Uncertain", "Bad", "Good"}
 
std::string quality = "Uncertain"
 
const int rad2urad = 1000000
 
bool readFromNFS
 
float rmsPV = 0
 
int runnum
 
float sigma_z = 0
 
float Size [3]
 
std::string sourceFile
 
std::string sourceFile1
 
std::string startTime = getDateTime()
 
time_t startTimeStamp = 0
 
std::string subjectCMS
 
std::string subjectLHC
 
std::string subjectPV
 
bool testing
 
float Tilt [2]
 
std::vector< int > timeoutLS
 
int type = -1
 
bool verbose
 
bool wholeTrackerOn = false
 
float width_x = 0
 
float width_y = 0
 
float x = 0
 
float y = 0
 
float z = 0
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer< edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, Args... >
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Attributes inherited from DQMOneLumiEDAnalyzer<>
edm::EDPutTokenT< DQMTokenlumiToken_
 
- Protected Attributes inherited from DQMOneEDAnalyzer< edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, Args... >
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Definition at line 29 of file BeamSpotDipServer.h.

Constructor & Destructor Documentation

◆ BeamSpotDipServer()

BeamSpotDipServer::BeamSpotDipServer ( const edm::ParameterSet ps)
explicit

Definition at line 34 of file BeamSpotDipServer.cc.

34  {
35  //
36  verbose = ps.getUntrackedParameter<bool>("verbose");
37  testing = ps.getUntrackedParameter<bool>("testing");
38 
39  subjectCMS = ps.getUntrackedParameter<string>("subjectCMS");
40  subjectLHC = ps.getUntrackedParameter<string>("subjectLHC");
41  subjectPV = ps.getUntrackedParameter<string>("subjectPV");
42 
43  readFromNFS = ps.getUntrackedParameter<bool>("readFromNFS");
44  // only if readFromNFS = true
45  sourceFile = ps.getUntrackedParameter<string>("sourceFile"); // beamspot
46  sourceFile1 = ps.getUntrackedParameter<string>("sourceFile1"); // tk status
47 
48  timeoutLS = ps.getUntrackedParameter<vector<int>>("timeoutLS");
49 
50  //
51  bsLegacyToken_ = esConsumes<edm::Transition::EndLuminosityBlock>();
52 
53  dcsRecordInputTag_ = ps.getParameter<edm::InputTag>("dcsRecordInputTag");
54  dcsRecordToken_ = consumes<DCSRecord>(dcsRecordInputTag_);
55 
56  //
57  dip = Dip::create("CmsBeamSpotServer");
58  edm::LogInfo("BeamSpotDipServer") << "reading from " << (readFromNFS ? "file (NFS)" : "database");
59 }

References beamerCreator::create(), edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), BeamSpotDipServer_cff::readFromNFS, BeamSpotDipServer_cff::sourceFile, BeamSpotDipServer_cff::sourceFile1, BeamSpotDipServer_cff::subjectCMS, BeamSpotDipServer_cff::subjectLHC, BeamSpotDipServer_cff::subjectPV, BeamSpotDipServer_cff::testing, BeamSpotDipServer_cff::timeoutLS, and verbose.

Member Function Documentation

◆ analyze()

void BeamSpotDipServer::analyze ( const edm::Event e,
const edm::EventSetup  
)
overrideprotectedvirtual

Reimplemented from DQMOneEDAnalyzer< edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, Args... >.

Definition at line 102 of file BeamSpotDipServer.cc.

102  {
103  if (!readFromNFS) {
104  // get runnumber
105  runnum = iEvent.run();
106 
107  // get tracker status if in a new lumisection
108  int nthlumi = iEvent.luminosityBlock();
109 
110  if (nthlumi > lastlumi) { // check every LS
111  lastlumi = nthlumi;
112 
114  iEvent.getByToken(dcsRecordToken_, dcsRecord);
115 
117  (*dcsRecord).highVoltageReady(DCSRecord::BPIX) && (*dcsRecord).highVoltageReady(DCSRecord::FPIX) &&
118  (*dcsRecord).highVoltageReady(DCSRecord::TIBTID) && (*dcsRecord).highVoltageReady(DCSRecord::TOB) &&
119  (*dcsRecord).highVoltageReady(DCSRecord::TECp) && (*dcsRecord).highVoltageReady(DCSRecord::TECm);
120 
121  if (verbose)
122  edm::LogInfo("BeamSpotDipServer") << "whole tracker on? " << (wholeTrackerOn ? "yes" : "no");
123  }
124  }
125 }

References DCSRecord::BPIX, DQMOffline_cff::dcsRecord, DCSRecord::FPIX, iEvent, BeamSpotDipServer_cff::readFromNFS, DCSRecord::TECm, DCSRecord::TECp, DCSRecord::TIBTID, DCSRecord::TOB, and verbose.

◆ bookHistograms()

void BeamSpotDipServer::bookHistograms ( DQMStore::IBooker ,
const edm::Run ,
const edm::EventSetup  
)
overrideprotectedvirtual

◆ CMS2LHCRF_POS()

void BeamSpotDipServer::CMS2LHCRF_POS ( float  x,
float  y,
float  z 
)
private

Definition at line 589 of file BeamSpotDipServer.cc.

589  {
590  if (x != 0) { // Rotation + Translation + Inversion + Scaling
591  double tmpx = x;
592  // x*rotY[0]*rotZ[0] + y*rotY[0]*rotZ[1] - z*rotY[1] + trans[0];
593  Centroid[0] = tmpx;
594  Centroid[0] *= -1.0 * cm2um;
595  } else
596  Centroid[0] = x;
597 
598  if (y != 0) { // Rotation + Translation + Scaling
599  double tmpy = y;
600  // x*(rotX[1]*rotY[1]*rotZ[0] - rotX[0]*rotZ[1]) +
601  // y*(rotX[0]*rotZ[0] + rotX[1]*rotY[1]*rotZ[1]) +
602  // z*rotX[1]*rotY[0] + trans[1];
603  Centroid[1] = tmpy;
604  Centroid[1] *= cm2um;
605  } else
606  Centroid[1] = y;
607 
608  if (z != 0) { // Rotation + Translation + Inversion + Scaling
609  double tmpz = z;
610  // x*(rotX[0]*rotY[1]*rotZ[0] + rotX[1]*rotZ[1]) +
611  // y*(rotX[0]*rotY[1]*rotZ[1] - rotX[1]*rotZ[0]) +
612  // z*rotX[0]*rotY[0] + trans[2];
613  Centroid[2] = tmpz;
614  Centroid[2] *= -1.0 * cm2mm;
615  } else
616  Centroid[2] = z;
617 }

References x, y, and z.

◆ dqmBeginLuminosityBlock()

void BeamSpotDipServer::dqmBeginLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup  
)
overrideprotectedvirtual

Reimplemented from DQMOneLumiEDAnalyzer<>.

Definition at line 97 of file BeamSpotDipServer.cc.

97  {
98  // do nothing
99 }

◆ dqmBeginRun()

void BeamSpotDipServer::dqmBeginRun ( const edm::Run r,
const edm::EventSetup  
)
overrideprotectedvirtual

Reimplemented from DQMOneEDAnalyzer< edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, Args... >.

Definition at line 67 of file BeamSpotDipServer.cc.

67  {
68  edm::LogInfo("BeamSpotDipServer") << "begin run " << r.run();
69 
70  try {
71  ErrHandler errHandler;
72 
73  edm::LogInfo("BeamSpotDipServer") << "server started at " + getDateTime();
74 
75  edm::LogInfo("BeamSpotDipServer") << "creating publication " + subjectCMS;
76  publicationCMS = dip->createDipPublication(subjectCMS.c_str(), &errHandler);
77  messageCMS = dip->createDipData();
78 
79  edm::LogInfo("BeamSpotDipServer") << "creating publication " + subjectLHC;
80  publicationLHC = dip->createDipPublication(subjectLHC.c_str(), &errHandler);
81  messageLHC = dip->createDipData();
82 
83  edm::LogInfo("BeamSpotDipServer") << "creating publication " + subjectPV;
84  publicationPV = dip->createDipPublication(subjectPV.c_str(), &errHandler);
85  messagePV = dip->createDipData();
86 
87  trueRcd(); // starts with all 0
88  publishRcd("UNINITIALIZED", "", true, false);
89  } catch (exception& e) {
90  edm::LogError("BeamSpotDipServer") << "exception (start up): " << e.what();
91  }
92 
93  quality = qualities[0]; // start with Uncertain
94 }

References MillePedeFileConverter_cfg::e, cppFunctionSkipper::exception, quality, alignCSCRings::r, BeamSpotDipServer_cff::subjectCMS, BeamSpotDipServer_cff::subjectLHC, and BeamSpotDipServer_cff::subjectPV.

◆ dqmEndLuminosityBlock()

void BeamSpotDipServer::dqmEndLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup iSetup 
)
overrideprotectedvirtual

Reimplemented from DQMOneLumiEDAnalyzer<>.

Definition at line 128 of file BeamSpotDipServer.cc.

128  {
129  edm::LogInfo("BeamSpotDipServer") << "--------------------- end of LS " << lumiSeg.luminosityBlock();
130 
131  try {
132  if (readFromNFS) {
133  ifstream logFile(sourceFile);
134 
135  if (!logFile.good()) {
136  edm::LogWarning("BeamSpotDipServer") << "Source File: " + sourceFile + " doesn't exist!";
137  problem();
138  } else {
140 
141  if (lastFitTime == 0)
143 
144  if (getFileSize(sourceFile) == 0) {
145  // source file has zero length
146  if (lastModTime > lastFitTime) {
147  string tmp = tkStatus();
148  edm::LogInfo("BeamSpotDipServer") << "New run starts. Run number: " << runnum;
149  if (verbose)
150  edm::LogInfo("BeamSpotDipServer") << "Initial lastModTime = " + getDateTime(lastModTime);
151  }
153  }
154 
155  if (lastModTime > lastFitTime) {
156  // source file modified
157  if (verbose) {
158  edm::LogInfo("BeamSpotDipServer") << "time of last fit = " + getDateTime(lastFitTime);
159  edm::LogInfo("BeamSpotDipServer") << "time of current fit = " + getDateTime(lastModTime);
160  }
162 
163  // source file length > 0
164  if (getFileSize(sourceFile) > 0) {
165  if (verbose)
166  edm::LogInfo("BeamSpotDipServer") << "reading record from " + sourceFile;
167 
168  if (readRcd(logFile)) {
169  if (verbose)
170  edm::LogInfo("BeamSpotDipServer") << "got new record from file";
171 
172  trueRcd();
173  alive.reset();
174  alive.flip(7);
175  } else {
176  if (verbose)
177  edm::LogInfo("BeamSpotDipServer") << "problem with new record";
178  fakeRcd();
179  }
180 
181  lsCount = 0;
182  }
183  } else {
184  // source file not touched
185  problem();
186  }
187  }
188 
189  logFile.close();
190  } else {
192  auto const& bs = *bsLegacyHandle;
193 
194  // from database
195  if (readRcd(bs)) {
196  if (verbose)
197  edm::LogInfo("BeamSpotDipServer") << "got new record from database";
198  trueRcd();
199  alive.reset();
200  alive.flip(7);
201  } else {
202  if (verbose)
203  edm::LogInfo("BeamSpotDipServer") << "problem with new record";
204  fakeRcd();
205  }
206 
207  lsCount = 0;
208  }
209 
210  // quality of the publish results
211  if (testing)
212  publishRcd(qualities[0], "Testing", true, true); // Uncertain
213  else if (quality == qualities[1]) // Bad
214  publishRcd(quality, "No fit or fit fails", true, true);
215  else
216  publishRcd(quality, "", true, true); // Good
217  } catch (exception& e) {
218  edm::LogWarning("BeamSpotDipServer") << "io exception (end of lumi): " << e.what();
219  };
220 }

References cms::cuda::bs, MillePedeFileConverter_cfg::e, cppFunctionSkipper::exception, edm::EventSetup::getHandle(), heppy_check::logFile, edm::LuminosityBlockBase::luminosityBlock(), quality, BeamSpotDipServer_cff::readFromNFS, BeamSpotDipServer_cff::sourceFile, BeamSpotDipServer_cff::testing, createJobs::tmp, and verbose.

◆ dqmEndRun()

void BeamSpotDipServer::dqmEndRun ( const edm::Run ,
const edm::EventSetup iSetup 
)
overrideprotectedvirtual

Reimplemented from DQMOneEDAnalyzer< edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, Args... >.

Definition at line 223 of file BeamSpotDipServer.cc.

223  {
224  // destroy publications and data
225  edm::LogInfo("BeamSpotDipServer") << "destroying publication " + subjectCMS;
226  dip->destroyDipPublication(publicationCMS);
227  delete messageCMS;
228 
229  edm::LogInfo("BeamSpotDipServer") << "destroying publication " + subjectLHC;
230  dip->destroyDipPublication(publicationLHC);
231  delete messageLHC;
232 
233  edm::LogInfo("BeamSpotDipServer") << "destroying publication " + subjectPV;
234  dip->destroyDipPublication(publicationPV);
235  delete messagePV;
236 }

References BeamSpotDipServer_cff::subjectCMS, BeamSpotDipServer_cff::subjectLHC, and BeamSpotDipServer_cff::subjectPV.

◆ fakeRcd()

void BeamSpotDipServer::fakeRcd ( )
private

Definition at line 686 of file BeamSpotDipServer.cc.

686  {
687  try {
688  Centroid[0] = 0;
689  Centroid[1] = 0;
690  Centroid[2] = 0;
691 
692  Size[0] = 0;
693  Size[1] = 0;
694  Size[2] = 0;
695 
696  Tilt[0] = 0;
697  Tilt[1] = 0;
698 
699  messageLHC->insert(Size, 3, "Size");
700  messageLHC->insert(Centroid, 3, "Centroid");
701  messageLHC->insert(Tilt, 2, "Tilt");
702  } catch (exception& e) {
703  edm::LogWarning("BeamSpotDipServer") << "exception (fakeRcd): " << e.what();
704  }
705 }

References MillePedeFileConverter_cfg::e, and cppFunctionSkipper::exception.

◆ getDateTime() [1/2]

string BeamSpotDipServer::getDateTime ( )
private

Definition at line 769 of file BeamSpotDipServer.cc.

769  {
770  time_t t = time(nullptr);
771 
772  return getDateTime(t);
773 }

References submitPVValidationJobs::t, and protons_cff::time.

◆ getDateTime() [2/2]

std::string BeamSpotDipServer::getDateTime ( long  epoch)
private

◆ getFileSize()

long BeamSpotDipServer::getFileSize ( std::string  filename)
private

Definition at line 239 of file BeamSpotDipServer.cc.

239  {
240  struct stat stat_buf;
241  int rc = stat(filename.c_str(), &stat_buf);
242  return (rc == 0 ? stat_buf.st_size : -1);
243 }

References corrVsCorr::filename, and edm_modernize_messagelogger::stat.

◆ getLastTime()

time_t BeamSpotDipServer::getLastTime ( std::string  filename)
private

Definition at line 246 of file BeamSpotDipServer.cc.

246  {
247  struct stat stat_buf;
248  int rc = stat(filename.c_str(), &stat_buf);
249  return (rc == 0 ? stat_buf.st_mtime : -1);
250 }

References corrVsCorr::filename, and edm_modernize_messagelogger::stat.

◆ parse()

vector< string > BeamSpotDipServer::parse ( std::string  line,
const std::string &  delimiter 
)
private

Definition at line 253 of file BeamSpotDipServer.cc.

253  {
254  vector<string> list;
255 
256  size_t pos = 0;
257  while ((pos = line.find(delimiter)) != string::npos) {
258  string token = line.substr(0, pos);
259 
260  list.push_back(token);
261 
262  line.erase(0, pos + delimiter.length());
263  }
264 
265  list.push_back(line); // remainder
266 
267  return list;
268 }

References makeHLTPrescaleTable::delimiter, mps_splice::line, and unpackBuffers-CaloStage2::token.

◆ problem()

void BeamSpotDipServer::problem ( )
private

Definition at line 323 of file BeamSpotDipServer.cc.

323  {
324  if (verbose)
325  edm::LogInfo("BeamSpotDipServer") << "no update | alive = " << alive;
326 
327  lsCount++;
328 
329  if ((lsCount % timeoutLS[0] == 0) && (lsCount % timeoutLS[1] != 0)) // first time out
330  {
331  if (!alive.test(1))
332  alive.flip(1);
333  if (!alive.test(2)) {
334  if (!alive.test(7))
335  fakeRcd();
336  else
337  trueRcd();
338 
339  stringstream warnMsg;
340  warnMsg << "No new data for " << lsCount << " LS";
341  publishRcd("Uncertain", warnMsg.str(), false, false);
342  } else {
343  fakeRcd();
344 
345  stringstream warnMsg;
346  warnMsg << "No new data for " << lsCount << " LS: " << tkStatus();
347  publishRcd("Bad", warnMsg.str(), false, false);
348  }
349  } else if (lsCount % timeoutLS[1] == 0) // second time out
350  {
351  if (!alive.test(2))
352  alive.flip(2);
353  fakeRcd();
354 
355  stringstream warnMsg;
356  warnMsg << "No new data for " << lsCount << " LS: " << tkStatus();
357  publishRcd("Bad", warnMsg.str(), false, false);
358  }
359 }

References BeamSpotDipServer_cff::timeoutLS, and verbose.

◆ publishRcd()

void BeamSpotDipServer::publishRcd ( std::string  qlty,
std::string  err,
bool  pubCMS,
bool  fitTime 
)
private

Definition at line 708 of file BeamSpotDipServer.cc.

708  {
709  try {
710  bool updateCMS = pubCMS && (currentLS % intLS == 0);
711 
712  if (verbose) {
713  edm::LogInfo("BeamSpotDipServer") << "sending (" << qlty << " | " << err << ")";
714 
715  if (alive.test(7)) {
716  if (updateCMS)
717  edm::LogInfo("BeamSpotDipServer") << " to CCC and CMS";
718  else if (!alive.test(1) && !alive.test(2))
719  edm::LogInfo("BeamSpotDipServer") << " to CCC only";
720  }
721  }
722 
723  DipTimestamp zeit;
724  if (fitTime) {
725  long epoch;
726  epoch = endTimeStamp * 1000; // convert to ms
727  zeit = DipTimestamp(epoch);
728  } else
729  zeit = DipTimestamp();
730 
731  // send
732  if (updateCMS)
733  publicationCMS->send(messageCMS, zeit);
734 
735  publicationLHC->send(messageLHC, zeit);
736  publicationPV->send(messagePV, zeit);
737 
738  // set qualities
739  if (qlty == qualities[0]) { // Uncertain
740  if (updateCMS)
741  publicationCMS->setQualityUncertain(err.c_str());
742 
743  publicationLHC->setQualityUncertain(err.c_str());
744  } else if (qlty == qualities[1]) { // Bad
745  if (updateCMS)
746  publicationCMS->setQualityBad(err.c_str());
747 
748  publicationLHC->setQualityBad(err.c_str());
749  } else if (qlty == "UNINITIALIZED") {
750  if (updateCMS)
751  publicationCMS->setQualityBad("UNINITIALIZED");
752 
753  publicationLHC->setQualityBad("UNINITIALIZED");
754  }
755  } catch (exception& e) {
756  edm::LogWarning("BeamSpotDipServer") << "exception (publishRcd): " << e.what();
757  }
758 }

References MillePedeFileConverter_cfg::e, submitPVResolutionJobs::err, cppFunctionSkipper::exception, and verbose.

◆ readRcd() [1/2]

bool BeamSpotDipServer::readRcd ( const BeamSpotOnlineObjects bs)
private

Definition at line 362 of file BeamSpotDipServer.cc.

364 {
365  runnum = bs.GetLastAnalyzedRun();
366 
367  // get from BeamSpotOnlineObject
368 
369  try {
370  startTime = bs.GetStartTime();
371  startTimeStamp = bs.GetStartTimeStamp();
372  endTime = bs.GetEndTime();
373  endTimeStamp = bs.GetEndTimeStamp();
374  } catch (exception& e) {
375  edm::LogWarning("BeamSpotDipServer") << "time variables are not available (readRcd): " << e.what();
376 
377  startTime = bs.GetCreationTime();
378  startTimeStamp = bs.GetCreationTime();
379  endTime = bs.GetCreationTime();
380  endTimeStamp = bs.GetCreationTime();
381  }
382 
383  try {
384  lumiRange = bs.GetLumiRange();
385  } catch (exception& e) {
386  edm::LogWarning("BeamSpotDipServer") << "lumirange variable not avaialble (readRcd): " << e.what();
387 
388  lumiRange = to_string(bs.GetLastAnalyzedLumi());
389  }
390 
391  currentLS = bs.GetLastAnalyzedLumi();
392 
393  type = bs.GetBeamType();
394 
395  if (verbose)
396  edm::LogInfo("BeamSpotDipServer") << "run: " << runnum << ", LS: " << currentLS << ", time: " << startTime << " "
397  << startTimeStamp << ", type: " << type;
398 
399  if (testing)
400  quality = qualities[0]; // Uncertain
401  else if (type >= 2)
402  quality = qualities[2]; // Good
403  else
404  quality = qualities[1]; // Bad
405 
406  x = bs.GetX();
407  y = bs.GetY();
408  z = bs.GetZ();
409 
410  sigma_z = bs.GetSigmaZ();
411  dxdz = bs.Getdxdz();
412  dydz = bs.Getdydz();
413  width_x = bs.GetBeamWidthX();
414  width_y = bs.GetBeamWidthX();
415 
416  err_x = bs.GetXError();
417  err_y = bs.GetYError();
418  err_z = bs.GetZError();
419  err_sigma_z = bs.GetSigmaZError();
420  err_dxdz = bs.GetdxdzError();
421  err_dydz = bs.GetdydzError();
422  err_width_x = bs.GetBeamWidthXError();
423  err_width_y = bs.GetBeamWidthYError();
424 
425  try {
426  events = bs.GetUsedEvents();
427  meanPV = bs.GetMeanPV();
428  err_meanPV = bs.GetMeanErrorPV();
429  rmsPV = bs.GetRmsPV();
430  err_rmsPV = bs.GetRmsErrorPV();
431  maxPV = bs.GetMaxPVs();
432  } catch (exception& e) {
433  edm::LogWarning("BeamSpotDipServer") << "PV variables are not available (readRcd): " << e.what();
434 
435  events = 0.;
436  meanPV = 0.;
437  err_meanPV = 0.;
438  rmsPV = 0.;
439  err_rmsPV = 0.;
440  maxPV = 0.;
441  }
442 
443  nPV = bs.GetNumPVs();
444 
445  if (verbose)
446  edm::LogInfo("BeamSpotDipServer") << "pos: (" << x << "," << y << "," << z << ")"
447  << " nPV: " << nPV;
448 
449  return true;
450 }

References cms::cuda::bs, BeamSpotPI::dxdz, BeamSpotPI::dydz, MillePedeFileConverter_cfg::e, patZpeak::events, cppFunctionSkipper::exception, quality, BeamSpotDipServer_cff::testing, verbose, x, y, and z.

◆ readRcd() [2/2]

bool BeamSpotDipServer::readRcd ( std::ifstream &  file)
private

◆ tkStatus()

string BeamSpotDipServer::tkStatus ( )
private

Definition at line 271 of file BeamSpotDipServer.cc.

271  {
272  string outstr;
273 
274  if (readFromNFS) { // get from file on /nfs
275  ifstream logfile(sourceFile1);
276 
277  if (!logfile.good() || getFileSize(sourceFile1) == 0) {
278  // file does not exist or has zero size
279  outstr = "No CMS Tracker status available. No DAQ/DQM.";
280  } else {
281  int nthLnInRcd = 0;
282  string record;
283 
284  try {
285  string record;
286 
287  while (getline(logfile, record)) {
288  nthLnInRcd++;
289  vector<string> tmp = parse(record, " ");
290 
291  switch (nthLnInRcd) {
292  case 7:
293  if (tmp[1].find("Yes") == string::npos)
294  outstr = "CMS Tracker OFF.";
295  else
296  outstr = "CMS not taking data or no beam.";
297  break;
298  case 8:
299  runnum = stoi(tmp[1]);
300  break;
301  default:
302  break;
303  }
304  }
305  } catch (exception& e) {
306  edm::LogWarning("BeamSpotDipServer") << "exception (tkStatus): " << e.what();
307  }
308  }
309 
310  logfile.close();
311  } else {
312  // get from DCS
313  if (wholeTrackerOn)
314  outstr = "CMS not taking data or no beam.";
315  else
316  outstr = "CMS Tracker OFF.";
317  }
318 
319  return outstr;
320 }

References MillePedeFileConverter_cfg::e, cppFunctionSkipper::exception, spr::find(), dqmPostProcessing_online::logfile, dumpparser::parse(), BeamSpotDipServer_cff::readFromNFS, AlCaHarvesting_cff::record, BeamSpotDipServer_cff::sourceFile1, and createJobs::tmp.

◆ trueRcd()

void BeamSpotDipServer::trueRcd ( )
private

Definition at line 620 of file BeamSpotDipServer.cc.

620  {
621  try {
622  // CMS to LHC RF
623  CMS2LHCRF_POS(x, y, z);
624 
625  Tilt[0] = dxdz * rad2urad;
626  Tilt[1] = (dydz != 0 ? (dydz * -1 * rad2urad) : 0);
627 
628  Size[0] = width_x * cm2um;
629  Size[1] = width_y * cm2um;
630  Size[2] = sigma_z * cm2mm;
631 
632  // CMS
633  messageCMS->insert(runnum, "runnum");
634  messageCMS->insert(startTime, "startTime");
635  messageCMS->insert(endTime, "endTime");
636  messageCMS->insert(startTimeStamp, "startTimeStamp");
637  messageCMS->insert(endTimeStamp, "endTimeStamp");
638  messageCMS->insert(lumiRange, "lumiRange");
639  messageCMS->insert(quality, "quality");
640  messageCMS->insert(type, "type"); // Unknown=-1, Fake=0, Tracker=2(Good)
641  messageCMS->insert(x, "x");
642  messageCMS->insert(y, "y");
643  messageCMS->insert(z, "z");
644  messageCMS->insert(dxdz, "dxdz");
645  messageCMS->insert(dydz, "dydz");
646  messageCMS->insert(width_x, "width_x");
647  messageCMS->insert(width_y, "width_y");
648  messageCMS->insert(sigma_z, "sigma_z");
649 
650  if (publishStatErrors) {
651  messageCMS->insert(err_x, "err_x");
652  messageCMS->insert(err_y, "err_y");
653  messageCMS->insert(err_z, "err_z");
654  messageCMS->insert(err_dxdz, "err_dxdz");
655  messageCMS->insert(err_dydz, "err_dydz");
656  messageCMS->insert(err_width_x, "err_width_x");
657  messageCMS->insert(err_width_y, "err_width_y");
658  messageCMS->insert(err_sigma_z, "err_sigma_z");
659  }
660 
661  // LHC
662  messageLHC->insert(Size, 3, "Size");
663  messageLHC->insert(Centroid, 3, "Centroid");
664  messageLHC->insert(Tilt, 2, "Tilt");
665 
666  // PV
667  messagePV->insert(runnum, "runnum");
668  messagePV->insert(startTime, "startTime");
669  messagePV->insert(endTime, "endTime");
670  messagePV->insert(startTimeStamp, "startTimeStamp");
671  messagePV->insert(endTimeStamp, "endTimeStamp");
672  messagePV->insert(lumiRange, "lumiRange");
673  messagePV->insert(events, "events");
674  messagePV->insert(meanPV, "meanPV");
675  messagePV->insert(err_meanPV, "err_meanPV");
676  messagePV->insert(rmsPV, "rmsPV");
677  messagePV->insert(err_rmsPV, "err_rmsPV");
678  messagePV->insert(maxPV, "maxPV");
679  messagePV->insert(nPV, "nPV");
680  } catch (exception& e) {
681  edm::LogWarning("BeamSpotDipServer") << "exception (trueRcd): " << e.what();
682  }
683 }

References BeamSpotPI::dxdz, BeamSpotPI::dydz, MillePedeFileConverter_cfg::e, patZpeak::events, cppFunctionSkipper::exception, quality, x, y, and z.

Member Data Documentation

◆ alive

std::bitset<8> BeamSpotDipServer::alive
private

Definition at line 72 of file BeamSpotDipServer.h.

◆ bsLegacyToken_

edm::ESGetToken<BeamSpotOnlineObjects, BeamSpotOnlineLegacyObjectsRcd> BeamSpotDipServer::bsLegacyToken_
private

Definition at line 133 of file BeamSpotDipServer.h.

◆ Centroid

float BeamSpotDipServer::Centroid[3]
private

Definition at line 122 of file BeamSpotDipServer.h.

◆ cm2mm

const int BeamSpotDipServer::cm2mm = 10
private

Definition at line 66 of file BeamSpotDipServer.h.

◆ cm2um

const int BeamSpotDipServer::cm2um = 10000
private

Definition at line 65 of file BeamSpotDipServer.h.

◆ currentLS

int BeamSpotDipServer::currentLS = 0
private

Definition at line 74 of file BeamSpotDipServer.h.

◆ dcsRecordInputTag_

edm::InputTag BeamSpotDipServer::dcsRecordInputTag_
private

Definition at line 126 of file BeamSpotDipServer.h.

◆ dcsRecordToken_

edm::EDGetTokenT<DCSRecord> BeamSpotDipServer::dcsRecordToken_
private

Definition at line 127 of file BeamSpotDipServer.h.

◆ dip

DipFactory* BeamSpotDipServer::dip
private

Definition at line 77 of file BeamSpotDipServer.h.

◆ dxdz

float BeamSpotDipServer::dxdz = 0
private

Definition at line 97 of file BeamSpotDipServer.h.

Referenced by BeamSpotObj.BeamSpot::Reset().

◆ dydz

float BeamSpotDipServer::dydz = 0
private

Definition at line 98 of file BeamSpotDipServer.h.

Referenced by BeamSpotObj.BeamSpot::Reset().

◆ endTime

std::string BeamSpotDipServer::endTime = getDateTime()
private

Definition at line 88 of file BeamSpotDipServer.h.

◆ endTimeStamp

time_t BeamSpotDipServer::endTimeStamp = 0
private

Definition at line 90 of file BeamSpotDipServer.h.

◆ err_dxdz

float BeamSpotDipServer::err_dxdz = 0
private

Definition at line 102 of file BeamSpotDipServer.h.

◆ err_dydz

float BeamSpotDipServer::err_dydz = 0
private

Definition at line 103 of file BeamSpotDipServer.h.

◆ err_meanPV

float BeamSpotDipServer::err_meanPV = 0
private

Definition at line 114 of file BeamSpotDipServer.h.

◆ err_rmsPV

float BeamSpotDipServer::err_rmsPV = 0
private

Definition at line 116 of file BeamSpotDipServer.h.

◆ err_sigma_z

float BeamSpotDipServer::err_sigma_z = 0
private

Definition at line 109 of file BeamSpotDipServer.h.

◆ err_width_x

float BeamSpotDipServer::err_width_x = 0
private

Definition at line 107 of file BeamSpotDipServer.h.

◆ err_width_y

float BeamSpotDipServer::err_width_y = 0
private

Definition at line 108 of file BeamSpotDipServer.h.

◆ err_x

float BeamSpotDipServer::err_x = 0
private

Definition at line 99 of file BeamSpotDipServer.h.

◆ err_y

float BeamSpotDipServer::err_y = 0
private

Definition at line 100 of file BeamSpotDipServer.h.

◆ err_z

float BeamSpotDipServer::err_z = 0
private

Definition at line 101 of file BeamSpotDipServer.h.

◆ events

int BeamSpotDipServer::events = 0
private

◆ intLS

const int BeamSpotDipServer::intLS = 1
private

Definition at line 67 of file BeamSpotDipServer.h.

◆ lastFitTime

long BeamSpotDipServer::lastFitTime = 0
private

Definition at line 70 of file BeamSpotDipServer.h.

◆ lastlumi

int BeamSpotDipServer::lastlumi = -1
private

Definition at line 129 of file BeamSpotDipServer.h.

◆ lastModTime

long BeamSpotDipServer::lastModTime = 0
private

Definition at line 71 of file BeamSpotDipServer.h.

◆ lsCount

int BeamSpotDipServer::lsCount = 0
private

Definition at line 73 of file BeamSpotDipServer.h.

◆ lumiRange

std::string BeamSpotDipServer::lumiRange = "0 - 0"
private

Definition at line 91 of file BeamSpotDipServer.h.

◆ maxPV

int BeamSpotDipServer::maxPV = 0
private

Definition at line 117 of file BeamSpotDipServer.h.

◆ meanPV

float BeamSpotDipServer::meanPV = 0
private

Definition at line 113 of file BeamSpotDipServer.h.

◆ messageCMS

DipData* BeamSpotDipServer::messageCMS
private

Definition at line 78 of file BeamSpotDipServer.h.

◆ messageLHC

DipData* BeamSpotDipServer::messageLHC
private

Definition at line 79 of file BeamSpotDipServer.h.

◆ messagePV

DipData* BeamSpotDipServer::messagePV
private

Definition at line 80 of file BeamSpotDipServer.h.

◆ nPV

int BeamSpotDipServer::nPV = 0
private

Definition at line 118 of file BeamSpotDipServer.h.

◆ publicationCMS

DipPublication* BeamSpotDipServer::publicationCMS
private

Definition at line 81 of file BeamSpotDipServer.h.

◆ publicationLHC

DipPublication* BeamSpotDipServer::publicationLHC
private

Definition at line 82 of file BeamSpotDipServer.h.

◆ publicationPV

DipPublication* BeamSpotDipServer::publicationPV
private

Definition at line 83 of file BeamSpotDipServer.h.

◆ publishStatErrors

const bool BeamSpotDipServer::publishStatErrors = true
private

Definition at line 63 of file BeamSpotDipServer.h.

◆ qualities

const char* BeamSpotDipServer::qualities[3] = {"Uncertain", "Bad", "Good"}
private

Definition at line 62 of file BeamSpotDipServer.h.

◆ quality

std::string BeamSpotDipServer::quality = "Uncertain"
private

Definition at line 92 of file BeamSpotDipServer.h.

◆ rad2urad

const int BeamSpotDipServer::rad2urad = 1000000
private

Definition at line 64 of file BeamSpotDipServer.h.

◆ readFromNFS

bool BeamSpotDipServer::readFromNFS
private

Definition at line 143 of file BeamSpotDipServer.h.

◆ rmsPV

float BeamSpotDipServer::rmsPV = 0
private

Definition at line 115 of file BeamSpotDipServer.h.

◆ runnum

int BeamSpotDipServer::runnum
private

Definition at line 86 of file BeamSpotDipServer.h.

◆ sigma_z

float BeamSpotDipServer::sigma_z = 0
private

Definition at line 106 of file BeamSpotDipServer.h.

◆ Size

float BeamSpotDipServer::Size[3]
private

Definition at line 121 of file BeamSpotDipServer.h.

◆ sourceFile

std::string BeamSpotDipServer::sourceFile
private

Definition at line 145 of file BeamSpotDipServer.h.

◆ sourceFile1

std::string BeamSpotDipServer::sourceFile1
private

Definition at line 146 of file BeamSpotDipServer.h.

◆ startTime

std::string BeamSpotDipServer::startTime = getDateTime()
private

Definition at line 87 of file BeamSpotDipServer.h.

◆ startTimeStamp

time_t BeamSpotDipServer::startTimeStamp = 0
private

Definition at line 89 of file BeamSpotDipServer.h.

◆ subjectCMS

std::string BeamSpotDipServer::subjectCMS
private

Definition at line 139 of file BeamSpotDipServer.h.

◆ subjectLHC

std::string BeamSpotDipServer::subjectLHC
private

Definition at line 140 of file BeamSpotDipServer.h.

◆ subjectPV

std::string BeamSpotDipServer::subjectPV
private

Definition at line 141 of file BeamSpotDipServer.h.

◆ testing

bool BeamSpotDipServer::testing
private

Definition at line 137 of file BeamSpotDipServer.h.

◆ Tilt

float BeamSpotDipServer::Tilt[2]
private

Definition at line 123 of file BeamSpotDipServer.h.

◆ timeoutLS

std::vector<int> BeamSpotDipServer::timeoutLS
private

Definition at line 148 of file BeamSpotDipServer.h.

◆ type

int BeamSpotDipServer::type = -1
private

◆ verbose

bool BeamSpotDipServer::verbose
private

◆ wholeTrackerOn

bool BeamSpotDipServer::wholeTrackerOn = false
private

Definition at line 130 of file BeamSpotDipServer.h.

◆ width_x

float BeamSpotDipServer::width_x = 0
private

Definition at line 104 of file BeamSpotDipServer.h.

◆ width_y

float BeamSpotDipServer::width_y = 0
private

Definition at line 105 of file BeamSpotDipServer.h.

◆ x

float BeamSpotDipServer::x = 0
private

◆ y

float BeamSpotDipServer::y = 0
private

◆ z

float BeamSpotDipServer::z = 0
private
BeamSpotDipServer::messageLHC
DipData * messageLHC
Definition: BeamSpotDipServer.h:79
BeamSpotDipServer::lumiRange
std::string lumiRange
Definition: BeamSpotDipServer.h:91
BeamSpotDipServer::messageCMS
DipData * messageCMS
Definition: BeamSpotDipServer.h:78
BeamSpotDipServer::Centroid
float Centroid[3]
Definition: BeamSpotDipServer.h:122
BeamSpotDipServer::sourceFile1
std::string sourceFile1
Definition: BeamSpotDipServer.h:146
BeamSpotDipServer::wholeTrackerOn
bool wholeTrackerOn
Definition: BeamSpotDipServer.h:130
BeamSpotDipServer::subjectLHC
std::string subjectLHC
Definition: BeamSpotDipServer.h:140
BeamSpotDipServer::err_dydz
float err_dydz
Definition: BeamSpotDipServer.h:103
makeHLTPrescaleTable.delimiter
delimiter
Definition: makeHLTPrescaleTable.py:181
BeamSpotDipServer::endTime
std::string endTime
Definition: BeamSpotDipServer.h:88
pos
Definition: PixelAliasList.h:18
BeamSpotDipServer::dcsRecordInputTag_
edm::InputTag dcsRecordInputTag_
Definition: BeamSpotDipServer.h:126
DCSRecord::TIBTID
Definition: DCSRecord.h:42
BeamSpotDipServer::problem
void problem()
Definition: BeamSpotDipServer.cc:323
BeamSpotDipServer::Size
float Size[3]
Definition: BeamSpotDipServer.h:121
protons_cff.time
time
Definition: protons_cff.py:35
BeamSpotDipServer::x
float x
Definition: BeamSpotDipServer.h:94
BeamSpotDipServer::subjectCMS
std::string subjectCMS
Definition: BeamSpotDipServer.h:139
BeamSpotDipServer::maxPV
int maxPV
Definition: BeamSpotDipServer.h:117
BeamSpotDipServer::meanPV
float meanPV
Definition: BeamSpotDipServer.h:113
BeamSpotDipServer::alive
std::bitset< 8 > alive
Definition: BeamSpotDipServer.h:72
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
BeamSpotDipServer::tkStatus
std::string tkStatus()
Definition: BeamSpotDipServer.cc:271
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
beamerCreator.create
def create(alignables, pedeDump, additionalData, outputFile, config)
Definition: beamerCreator.py:44
BeamSpotDipServer::width_x
float width_x
Definition: BeamSpotDipServer.h:104
BeamSpotDipServer::readFromNFS
bool readFromNFS
Definition: BeamSpotDipServer.h:143
spr::find
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
DCSRecord::TECp
Definition: DCSRecord.h:44
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
BeamSpotDipServer::getFileSize
long getFileSize(std::string filename)
Definition: BeamSpotDipServer.cc:239
edm::Handle
Definition: AssociativeIterator.h:50
BeamSpotDipServer::z
float z
Definition: BeamSpotDipServer.h:96
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
BeamSpotDipServer::type
int type
Definition: BeamSpotDipServer.h:93
BeamSpotDipServer::dydz
float dydz
Definition: BeamSpotDipServer.h:98
BeamSpotDipServer::startTimeStamp
time_t startTimeStamp
Definition: BeamSpotDipServer.h:89
BeamSpotDipServer::verbose
bool verbose
Definition: BeamSpotDipServer.h:136
BeamSpotDipServer::CMS2LHCRF_POS
void CMS2LHCRF_POS(float x, float y, float z)
Definition: BeamSpotDipServer.cc:589
BeamSpotDipServer::currentLS
int currentLS
Definition: BeamSpotDipServer.h:74
ErrHandler
Definition: BeamSpotDipServer.cc:23
cms::cuda::bs
bs
Definition: HistoContainer.h:76
BeamSpotDipServer::endTimeStamp
time_t endTimeStamp
Definition: BeamSpotDipServer.h:90
BeamSpotDipServer::err_meanPV
float err_meanPV
Definition: BeamSpotDipServer.h:114
BeamSpotDipServer::err_z
float err_z
Definition: BeamSpotDipServer.h:101
BeamSpotDipServer::getDateTime
std::string getDateTime()
Definition: BeamSpotDipServer.cc:769
DCSRecord::BPIX
Definition: DCSRecord.h:46
edm::LuminosityBlockBase::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: LuminosityBlockBase.h:40
DCSRecord::TOB
Definition: DCSRecord.h:43
edm::ESHandle
Definition: DTSurvey.h:22
BeamSpotDipServer::lastlumi
int lastlumi
Definition: BeamSpotDipServer.h:129
BeamSpotDipServer::testing
bool testing
Definition: BeamSpotDipServer.h:137
corrVsCorr.filename
filename
Definition: corrVsCorr.py:123
BeamSpotDipServer::timeoutLS
std::vector< int > timeoutLS
Definition: BeamSpotDipServer.h:148
BeamSpotDipServer::parse
std::vector< std::string > parse(std::string line, const std::string &delimiter)
Definition: BeamSpotDipServer.cc:253
BeamSpotDipServer::subjectPV
std::string subjectPV
Definition: BeamSpotDipServer.h:141
BeamSpotDipServer::bsLegacyToken_
edm::ESGetToken< BeamSpotOnlineObjects, BeamSpotOnlineLegacyObjectsRcd > bsLegacyToken_
Definition: BeamSpotDipServer.h:133
BeamSpotDipServer::messagePV
DipData * messagePV
Definition: BeamSpotDipServer.h:80
BeamSpotDipServer::fakeRcd
void fakeRcd()
Definition: BeamSpotDipServer.cc:686
BeamSpotDipServer::err_dxdz
float err_dxdz
Definition: BeamSpotDipServer.h:102
cppFunctionSkipper.exception
exception
Definition: cppFunctionSkipper.py:10
DCSRecord::FPIX
Definition: DCSRecord.h:47
BeamSpotDipServer::publishRcd
void publishRcd(std::string qlty, std::string err, bool pubCMS, bool fitTime)
Definition: BeamSpotDipServer.cc:708
type
type
Definition: SiPixelVCal_PayloadInspector.cc:39
BeamSpotDipServer::sourceFile
std::string sourceFile
Definition: BeamSpotDipServer.h:145
iEvent
int iEvent
Definition: GenABIO.cc:224
BeamSpotDipServer::publishStatErrors
const bool publishStatErrors
Definition: BeamSpotDipServer.h:63
BeamSpotDipServer::err_width_y
float err_width_y
Definition: BeamSpotDipServer.h:108
edm::EventSetup::getHandle
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:155
DQMOffline_cff.dcsRecord
dcsRecord
Definition: DQMOffline_cff.py:27
BeamSpotDipServer::width_y
float width_y
Definition: BeamSpotDipServer.h:105
AlCaHarvesting_cff.record
record
Definition: AlCaHarvesting_cff.py:42
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
submitPVResolutionJobs.err
err
Definition: submitPVResolutionJobs.py:85
BeamSpotDipServer::publicationCMS
DipPublication * publicationCMS
Definition: BeamSpotDipServer.h:81
BeamSpotDipServer::runnum
int runnum
Definition: BeamSpotDipServer.h:86
BeamSpotDipServer::err_rmsPV
float err_rmsPV
Definition: BeamSpotDipServer.h:116
alignCSCRings.r
r
Definition: alignCSCRings.py:93
BeamSpotDipServer::lastModTime
long lastModTime
Definition: BeamSpotDipServer.h:71
BeamSpotDipServer::err_y
float err_y
Definition: BeamSpotDipServer.h:100
BeamSpotDipServer::sigma_z
float sigma_z
Definition: BeamSpotDipServer.h:106
BeamSpotDipServer::dxdz
float dxdz
Definition: BeamSpotDipServer.h:97
BeamSpotDipServer::cm2mm
const int cm2mm
Definition: BeamSpotDipServer.h:66
BeamSpotDipServer::err_x
float err_x
Definition: BeamSpotDipServer.h:99
BeamSpotDipServer::publicationLHC
DipPublication * publicationLHC
Definition: BeamSpotDipServer.h:82
BeamSpotDipServer::Tilt
float Tilt[2]
Definition: BeamSpotDipServer.h:123
BeamSpotDipServer::lastFitTime
long lastFitTime
Definition: BeamSpotDipServer.h:70
BeamSpotDipServer::rmsPV
float rmsPV
Definition: BeamSpotDipServer.h:115
BeamSpotDipServer::quality
std::string quality
Definition: BeamSpotDipServer.h:92
BeamSpotDipServer::trueRcd
void trueRcd()
Definition: BeamSpotDipServer.cc:620
BeamSpotDipServer::events
int events
Definition: BeamSpotDipServer.h:112
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
BeamSpotDipServer::dcsRecordToken_
edm::EDGetTokenT< DCSRecord > dcsRecordToken_
Definition: BeamSpotDipServer.h:127
BeamSpotDipServer::getLastTime
time_t getLastTime(std::string filename)
Definition: BeamSpotDipServer.cc:246
BeamSpotDipServer::nPV
int nPV
Definition: BeamSpotDipServer.h:118
heppy_check.logFile
logFile
Definition: heppy_check.py:40
BeamSpotDipServer::err_sigma_z
float err_sigma_z
Definition: BeamSpotDipServer.h:109
BeamSpotDipServer::y
float y
Definition: BeamSpotDipServer.h:95
BeamSpotDipServer::err_width_x
float err_width_x
Definition: BeamSpotDipServer.h:107
edm_modernize_messagelogger.stat
stat
Definition: edm_modernize_messagelogger.py:27
BeamSpotDipServer::publicationPV
DipPublication * publicationPV
Definition: BeamSpotDipServer.h:83
mps_splice.line
line
Definition: mps_splice.py:76
submitPVValidationJobs.t
string t
Definition: submitPVValidationJobs.py:644
edm::Log
Definition: MessageLogger.h:70
BeamSpotDipServer::dip
DipFactory * dip
Definition: BeamSpotDipServer.h:77
edm::InputTag
Definition: InputTag.h:15
BeamSpotDipServer::intLS
const int intLS
Definition: BeamSpotDipServer.h:67
BeamSpotDipServer::readRcd
bool readRcd(const BeamSpotOnlineObjects &bs)
Definition: BeamSpotDipServer.cc:362
BeamSpotDipServer::rad2urad
const int rad2urad
Definition: BeamSpotDipServer.h:64
dqmPostProcessing_online.logfile
logfile
Definition: dqmPostProcessing_online.py:96
BeamSpotDipServer::startTime
std::string startTime
Definition: BeamSpotDipServer.h:87
BeamSpotDipServer::cm2um
const int cm2um
Definition: BeamSpotDipServer.h:65
BeamSpotDipServer::qualities
const char * qualities[3]
Definition: BeamSpotDipServer.h:62
DCSRecord::TECm
Definition: DCSRecord.h:45
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
BeamSpotDipServer::lsCount
int lsCount
Definition: BeamSpotDipServer.h:73
unpackBuffers-CaloStage2.token
token
Definition: unpackBuffers-CaloStage2.py:316