CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PixelTrimBase.h
Go to the documentation of this file.
1 #ifndef PixelTrimBase_h
2 #define PixelTrimBase_h
3 
18 #include <string>
25 
26 
27 namespace pos{
47 
48  public:
49 
53 
54  ~PixelTrimBase() override;
55 
56  void setOverride(PixelTrimOverrideBase* trimOverride);
57 
58  //Build the commands needed to configure ROCs
59  //on control link
60 
61  virtual void generateConfiguration(PixelFECConfigInterface* pixelFEC,
62  PixelNameTranslation* trans,
63  const PixelMaskBase& pixelMask) const =0;
64  virtual void writeBinary( std::string filename) const =0;
65 
66  void writeASCII( std::string filename) const override =0;
68  int version,
70  ) const override {;}
72  int version,
74  std::ofstream *out,
75  std::ofstream *out1 = nullptr,
76  std::ofstream *out2 = nullptr
77  ) const override {;}
78  void writeXML( std::ofstream *out,
79  std::ofstream *out1 = nullptr ,
80  std::ofstream *out2 = nullptr
81  ) const override {;}
82  void writeXMLTrailer( std::ofstream *out,
83  std::ofstream *out1 = nullptr,
84  std::ofstream *out2 = nullptr
85  ) const override {;}
86 
87  virtual PixelROCTrimBits getTrimBits(int ROCId) const =0;
88 
90 
91  friend std::ostream& operator<<(std::ostream& s, const PixelTrimBase& mask);
92 
93 
94  private:
95 
97 
98  };
99 }
100 /* @} */
101 #endif
void setOverride(PixelTrimOverrideBase *trimOverride)
This file contains the base class for "pixel configuration data" management.
std::string description()
void writeASCII(std::string filename) const override=0
void writeXML(std::ofstream *out, std::ofstream *out1=nullptr, std::ofstream *out2=nullptr) const override
Definition: PixelTrimBase.h:78
This class provides a translation from the naming documents standard to specify the ROC to the corres...
void writeXMLTrailer(std::ofstream *out, std::ofstream *out1=nullptr, std::ofstream *out2=nullptr) const override
Definition: PixelTrimBase.h:82
This class intends to define an abstract interface for the commands to talk to the PixelFEC...
void writeXML(pos::PixelConfigKey key, int version, std::string path) const override
Definition: PixelTrimBase.h:67
PixelTrimOverrideBase * trimOverride_
Definition: PixelTrimBase.h:96
This class implements..
This is the documentation about PixelMaskBase...
Definition: PixelMaskBase.h:36
This class implements..
virtual void writeBinary(std::string filename) const =0
~PixelTrimBase() override
std::string date()
friend std::ostream & operator<<(std::ostream &s, const PixelTrimBase &mask)
This class provides a base class for the pixel trim data for the pixel FEC configuration.
void writeXMLHeader(pos::PixelConfigKey key, int version, std::string path, std::ofstream *out, std::ofstream *out1=nullptr, std::ofstream *out2=nullptr) const override
Definition: PixelTrimBase.h:71
std::string creator()
This is the documentation about PixelNameTranslation...
This class implements..
Definition: PixelROCName.h:23
This class implements..
virtual void generateConfiguration(PixelFECConfigInterface *pixelFEC, PixelNameTranslation *trans, const PixelMaskBase &pixelMask) const =0
This class implements..
Definition: PixelTrimBase.h:46
PixelTrimBase(std::string description, std::string creator, std::string date)
virtual PixelROCTrimBits getTrimBits(int ROCId) const =0
This class stores the name and related hardware mappings for a ROC.