EventFilter
CSCRawToDigi
interface
CSCDMBHeader.h
Go to the documentation of this file.
1
#ifndef EventFilter_CSCRawToDigi_CSCDMBHeader_h
2
#define EventFilter_CSCRawToDigi_CSCDMBHeader_h
3
4
#include <cassert>
5
#include <iosfwd>
6
#include <cstring>
// bzero
7
#include <memory>
8
#include "
FWCore/Utilities/interface/Exception.h
"
9
#include "
DataFormats/CSCDigi/interface/CSCDMBStatusDigi.h
"
10
#include "
EventFilter/CSCRawToDigi/interface/CSCVDMBHeaderFormat.h
"
11
12
struct
CSCDMBHeader2005
;
13
struct
CSCDMBHeader2013
;
14
15
class
CSCDMBHeader
{
16
public
:
17
CSCDMBHeader
(uint16_t firmware_version = 2005);
18
19
CSCDMBHeader
(
const
uint16_t*
buf
, uint16_t firmware_version = 2005);
20
21
bool
cfebAvailable
(
unsigned
icfeb) {
return
(
theHeaderFormat
->cfebAvailable() >> icfeb) & 1; }
22
23
void
addCFEB
(
int
icfeb) {
theHeaderFormat
->addCFEB(icfeb); }
24
void
addNCLCT
() {
theHeaderFormat
->addNCLCT(); };
25
26
void
addNALCT
() {
theHeaderFormat
->addNALCT(); };
27
void
setBXN
(
int
bxn
) {
theHeaderFormat
->setBXN(
bxn
); };
28
void
setL1A
(
int
l1a
) {
theHeaderFormat
->setL1A(
l1a
); };
29
void
setL1A24
(
int
l1a
) {
theHeaderFormat
->setL1A24(
l1a
); };
30
void
setCrateAddress
(
int
crate,
int
dmbId) {
theHeaderFormat
->setCrateAddress(crate, dmbId); };
31
void
setdmbID
(
int
newDMBID) {
theHeaderFormat
->setdmbID(newDMBID); };
32
void
setdmbVersion
(
unsigned
int
version
) {
theHeaderFormat
->setdmbVersion(
version
); };
33
34
unsigned
cfebActive
()
const
{
return
theHeaderFormat
->cfebActive(); };
35
unsigned
crateID
()
const
{
return
theHeaderFormat
->crateID(); };
36
unsigned
dmbID
()
const
{
return
theHeaderFormat
->dmbID(); };
37
unsigned
bxn
()
const
{
return
theHeaderFormat
->bxn(); };
38
unsigned
bxn12
()
const
{
return
theHeaderFormat
->bxn12(); };
39
unsigned
l1a
()
const
{
return
theHeaderFormat
->l1a(); };
40
unsigned
l1a24
()
const
{
return
theHeaderFormat
->l1a24(); };
41
unsigned
cfebAvailable
()
const
{
return
theHeaderFormat
->cfebAvailable(); };
42
unsigned
nalct
()
const
{
return
theHeaderFormat
->nalct(); };
43
unsigned
nclct
()
const
{
return
theHeaderFormat
->nclct(); };
44
unsigned
cfebMovlp
()
const
{
return
theHeaderFormat
->cfebMovlp(); };
45
unsigned
dmbCfebSync
()
const
{
return
theHeaderFormat
->dmbCfebSync(); };
46
unsigned
activeDavMismatch
()
const
{
return
theHeaderFormat
->activeDavMismatch(); };
47
48
unsigned
sizeInWords
()
const
{
return
theHeaderFormat
->sizeInWords(); };
49
unsigned
format_version
()
const
{
return
theHeaderFormat
->format_version(); };
50
51
bool
check
()
const
{
return
theHeaderFormat
->check(); };
52
53
unsigned
short
*
data
() {
return
theHeaderFormat
->data(); };
54
unsigned
short
*
data
()
const
{
return
theHeaderFormat
->data(); };
55
56
//ostream & operator<<(ostream &, const CSCDMBHeader &);
57
59
CSCDMBHeader2005
dmbHeader2005
()
const
;
60
CSCDMBHeader2013
dmbHeader2013
()
const
;
61
62
private
:
63
std::shared_ptr<CSCVDMBHeaderFormat>
theHeaderFormat
;
64
int
theFirmwareVersion
;
65
};
66
67
#endif
CSCDMBHeader::theFirmwareVersion
int theFirmwareVersion
Definition:
CSCDMBHeader.h:64
CSCDMBHeader::dmbHeader2005
CSCDMBHeader2005 dmbHeader2005() const
will throw if the cast fails
Definition:
CSCDMBHeader.cc:24
CSCDMBHeader2013
Definition:
CSCDMBHeader2013.h:43
CSCDMBHeader::dmbCfebSync
unsigned dmbCfebSync() const
Definition:
CSCDMBHeader.h:45
CSCDMBHeader::bxn
unsigned bxn() const
Definition:
CSCDMBHeader.h:37
CSCDMBHeader::addNCLCT
void addNCLCT()
Definition:
CSCDMBHeader.h:24
CSCVDMBHeaderFormat.h
CSCDMBHeader::nalct
unsigned nalct() const
Definition:
CSCDMBHeader.h:42
CSCDMBHeader::dmbHeader2013
CSCDMBHeader2013 dmbHeader2013() const
Definition:
CSCDMBHeader.cc:32
CSCDMBHeader::setdmbVersion
void setdmbVersion(unsigned int version)
Definition:
CSCDMBHeader.h:32
CSCDMBHeader::cfebAvailable
unsigned cfebAvailable() const
Definition:
CSCDMBHeader.h:41
CSCDMBHeader::setL1A
void setL1A(int l1a)
Definition:
CSCDMBHeader.h:28
CSCDMBHeader::cfebMovlp
unsigned cfebMovlp() const
Definition:
CSCDMBHeader.h:44
CSCDMBHeader::setBXN
void setBXN(int bxn)
Definition:
CSCDMBHeader.h:27
CSCDMBHeader::activeDavMismatch
unsigned activeDavMismatch() const
Definition:
CSCDMBHeader.h:46
visDQMUpload.buf
buf
Definition:
visDQMUpload.py:153
CSCDMBHeader::theHeaderFormat
std::shared_ptr< CSCVDMBHeaderFormat > theHeaderFormat
Definition:
CSCDMBHeader.h:63
BeamSplash_cfg.version
version
Definition:
BeamSplash_cfg.py:45
CSCDMBHeader::addCFEB
void addCFEB(int icfeb)
Definition:
CSCDMBHeader.h:23
CSCDMBStatusDigi.h
CSCDMBHeader::l1a
unsigned l1a() const
Definition:
CSCDMBHeader.h:39
CSCDMBHeader::setCrateAddress
void setCrateAddress(int crate, int dmbId)
Definition:
CSCDMBHeader.h:30
CSCDMBHeader::format_version
unsigned format_version() const
Definition:
CSCDMBHeader.h:49
Exception.h
CSCDMBHeader::dmbID
unsigned dmbID() const
Definition:
CSCDMBHeader.h:36
CSCDMBHeader::nclct
unsigned nclct() const
Definition:
CSCDMBHeader.h:43
CSCDMBHeader::data
unsigned short * data()
Definition:
CSCDMBHeader.h:53
CSCDMBHeader::sizeInWords
unsigned sizeInWords() const
Definition:
CSCDMBHeader.h:48
CSCDMBHeader::CSCDMBHeader
CSCDMBHeader(uint16_t firmware_version=2005)
Definition:
CSCDMBHeader.cc:7
CSCDMBHeader::setL1A24
void setL1A24(int l1a)
Definition:
CSCDMBHeader.h:29
CSCDMBHeader::crateID
unsigned crateID() const
Definition:
CSCDMBHeader.h:35
CSCDMBHeader::data
unsigned short * data() const
Definition:
CSCDMBHeader.h:54
CSCDMBHeader::l1a24
unsigned l1a24() const
Definition:
CSCDMBHeader.h:40
CSCDMBHeader::check
bool check() const
Definition:
CSCDMBHeader.h:51
CSCDMBHeader2005
Definition:
CSCDMBHeader2005.h:10
CSCDMBHeader::addNALCT
void addNALCT()
Definition:
CSCDMBHeader.h:26
CSCDMBHeader::bxn12
unsigned bxn12() const
Definition:
CSCDMBHeader.h:38
CSCDMBHeader::cfebAvailable
bool cfebAvailable(unsigned icfeb)
Definition:
CSCDMBHeader.h:21
CSCDMBHeader::setdmbID
void setdmbID(int newDMBID)
Definition:
CSCDMBHeader.h:31
CSCDMBHeader::cfebActive
unsigned cfebActive() const
Definition:
CSCDMBHeader.h:34
CSCDMBHeader
Definition:
CSCDMBHeader.h:15
Generated for CMSSW Reference Manual by
1.8.14