CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_13_patch3/src/CalibFormats/SiPixelObjects/interface/PixelTrimAllPixels.h

Go to the documentation of this file.
00001 #ifndef PixelTrimAllPixels_h
00002 #define PixelTrimAllPixels_h
00003 
00011 #include <string>
00012 #include <vector>
00013 #include "CalibFormats/SiPixelObjects/interface/PixelTrimBase.h"
00014 #include "CalibFormats/SiPixelObjects/interface/PixelMaskBase.h"
00015 #include "CalibFormats/SiPixelObjects/interface/PixelROCTrimBits.h"
00016 #include "CalibFormats/SiPixelObjects/interface/PixelROCName.h"
00017 #include "CalibFormats/SiPixelObjects/interface/PixelNameTranslation.h"
00018 
00019 namespace pos{
00031   class PixelTrimAllPixels: public PixelTrimBase {
00032 
00033   public:
00034 
00035     PixelTrimAllPixels(std::string filename);
00036     PixelTrimAllPixels(std::vector<std::vector<std::string> > &tableMat);  
00037 
00038     //Build the commands needed to configure ROCs
00039     //on control link
00040 
00041     void generateConfiguration(PixelFECConfigInterface* pixelFEC,
00042                                PixelNameTranslation* trans,
00043                                const PixelMaskBase& pixelMask) const;
00044 
00045     void writeBinary(std::string filename) const;
00046 
00047     void         writeASCII(std::string filename) const;
00048     void         writeXML(      pos::PixelConfigKey key, int version, std::string path)                     const {;}
00049     virtual void writeXMLHeader(pos::PixelConfigKey key, 
00050                                 int version, 
00051                                 std::string path, 
00052                                 std::ofstream *out,
00053                                 std::ofstream *out1 = NULL,
00054                                 std::ofstream *out2 = NULL
00055                                 ) const ;
00056     virtual void writeXML( std::ofstream *out,                                                              
00057                            std::ofstream *out1 = NULL ,
00058                            std::ofstream *out2 = NULL ) const ;
00059     virtual void writeXMLTrailer( std::ofstream *out, 
00060                                   std::ofstream *out1 = NULL,
00061                                   std::ofstream *out2 =NULL
00062                                   ) const ;
00063 
00064     PixelROCTrimBits getTrimBits(int ROCId) const;
00065 
00066     PixelROCTrimBits* getTrimBits(PixelROCName name);
00067 
00068 
00069   private:
00070 
00071     std::vector<std::string> rocname_;
00072     std::vector<PixelROCTrimBits> trimbits_;
00073 
00074   };
00075 }
00076 /* @} */
00077 #endif