CMS 3D CMS Logo

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