CMS 3D CMS Logo

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

#include <EcalDCCHeaderDisplay.h>

Inheritance diagram for EcalDCCHeaderDisplay:
edm::one::EDAnalyzer<> edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

 EcalDCCHeaderDisplay (const edm::ParameterSet &ps)
 
- Public Member Functions inherited from edm::one::EDAnalyzer<>
 EDAnalyzer ()=default
 
 EDAnalyzer (const EDAnalyzer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
const EDAnalyzeroperator= (const EDAnalyzer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () 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 const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
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
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
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 &c) override
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
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<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Private Attributes

edm::InputTag EcalDCCHeaderCollection_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Detailed Description

module for displaying unpacked DCCHeader information

Author
A. Ghezzi
S. Cooper
G. Franzoni

Definition at line 18 of file EcalDCCHeaderDisplay.h.

Constructor & Destructor Documentation

◆ EcalDCCHeaderDisplay()

EcalDCCHeaderDisplay::EcalDCCHeaderDisplay ( const edm::ParameterSet iConfig)

module for displaying unpacked DCCHeader information

Author
A. Ghezzi
S. Cooper
G. Franzoni

Definition at line 12 of file EcalDCCHeaderDisplay.cc.

References EcalDCCHeaderCollection_, and edm::ParameterSet::getParameter().

12  {
13  EcalDCCHeaderCollection_ = iConfig.getParameter<edm::InputTag>("EcalDCCHeaderCollection");
14 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
edm::InputTag EcalDCCHeaderCollection_

Member Function Documentation

◆ analyze()

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

Implements edm::one::EDAnalyzerBase.

Definition at line 16 of file EcalDCCHeaderDisplay.cc.

References edm::SortedCollection< T, SORT >::begin(), gather_cfg::cout, EcalDCCHeaderBlock::EcalDCCEventSettings::delay, MillePedeFileConverter_cfg::e, EcalDCCHeaderCollection_, edm::SortedCollection< T, SORT >::end(), EcalDCCHeaderBlock::EcalDCCEventSettings::LaserFilter, EcalDCCHeaderBlock::EcalDCCEventSettings::LaserPower, EcalDCCHeaderBlock::EcalDCCEventSettings::MEMVinj, EcalDCCHeaderBlock::EcalDCCEventSettings::mgpa_content, EcalDCCHeaderBlock::EcalDCCEventSettings::ped_offset, edm::SortedCollection< T, SORT >::size(), optionsL1T::skip, and EcalDCCHeaderBlock::EcalDCCEventSettings::wavelength.

16  {
18  e.getByLabel(EcalDCCHeaderCollection_, DCCHeaders);
19 
20  std::cout << "\n\n ^^^^^^^^^^^^^^^^^^ [EcalDCCHeaderDisplay] DCCHeaders collection size " << DCCHeaders->size()
21  << std::endl;
22  std::cout << " [EcalDCCHeaderDisplay] the Header(s)\n" << std::endl;
23  //short dumpConter =0;
24 
25  for (EcalRawDataCollection::const_iterator headerItr = DCCHeaders->begin(); headerItr != DCCHeaders->end();
26  ++headerItr) {
27  // int nevt =headerItr->getLV1();
28  bool skip = false;
29 
30  if (skip) {
31  continue;
32  }
33  std::cout << "###################################################################### \n";
34  std::cout << "FedId: " << headerItr->fedId() << "\n";
35 
36  std::cout << "DCCErrors: " << headerItr->getDCCErrors() << "\n";
37  std::cout << "Run Number: " << headerItr->getRunNumber() << "\n";
38  std::cout << "Event number (LV1): " << headerItr->getLV1() << "\n";
39  std::cout << "Orbit: " << headerItr->getOrbit() << "\n";
40  std::cout << "BX: " << headerItr->getBX() << "\n";
41  std::cout << "TRIGGER TYPE: " << headerItr->getBasicTriggerType() << "\n";
42 
43  std::cout << "RUNTYPE: " << headerItr->getRunType() << "\n";
44  std::cout << "Half: " << headerItr->getRtHalf() << "\n";
45  std::cout << "DCCIdInTCCCommand: " << headerItr->getDccInTCCCommand() << "\n";
46  std::cout << "MGPA gain: " << headerItr->getMgpaGain() << "\n";
47  std::cout << "MEM gain: " << headerItr->getMemGain() << "\n";
48  EcalDCCHeaderBlock::EcalDCCEventSettings settings = headerItr->getEventSettings();
49  std::cout << "LaserPower: " << settings.LaserPower << "\n";
50  std::cout << "LAserFilter: " << settings.LaserFilter << "\n";
51  std::cout << "Wavelenght: " << settings.wavelength << "\n";
52  std::cout << "delay: " << settings.delay << "\n";
53  std::cout << "MEM Vinj: " << settings.MEMVinj << "\n";
54  std::cout << "MGPA content: " << settings.mgpa_content << "\n";
55  std::cout << "Ped offset dac: " << settings.ped_offset << "\n";
56 
57  std::cout << "Selective Readout: " << headerItr->getSelectiveReadout() << "\n";
58  std::cout << "ZS: " << headerItr->getZeroSuppression() << "\n";
59  std::cout << "TZS: " << headerItr->getTestZeroSuppression() << "\n";
60  std::cout << "SRStatus: " << headerItr->getSrpStatus() << "\n";
61 
62  std::vector<short> TCCStatus = headerItr->getTccStatus();
63  std::cout << "TCC Status size: " << TCCStatus.size() << std::endl;
64  std::cout << "TCC Status: ";
65  for (unsigned u = 0; u < TCCStatus.size(); u++) {
66  std::cout << TCCStatus[u] << " ";
67  }
68  std::cout << std::endl;
69 
70  std::vector<short> TTStatus = headerItr->getFEStatus();
71  std::cout << "TT Status size: " << TTStatus.size() << std::endl;
72  std::cout << "TT Statuses: ";
73  for (unsigned u = 0; u < TTStatus.size(); u++) {
74  if (!(u % 14))
75  std::cout << std::endl; // TODO: add space after first six in a row
76  std::cout << TTStatus[u] << " ";
77  }
78  std::cout << std::endl;
79  std::cout << "######################################################################" << std::endl;
80  ;
81  }
82 }
edm::InputTag EcalDCCHeaderCollection_
size_type size() const
std::vector< T >::const_iterator const_iterator
const_iterator begin() const
const_iterator end() const

Member Data Documentation

◆ EcalDCCHeaderCollection_

edm::InputTag EcalDCCHeaderDisplay::EcalDCCHeaderCollection_
private

Definition at line 26 of file EcalDCCHeaderDisplay.h.

Referenced by analyze(), and EcalDCCHeaderDisplay().