CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/CondFormats/L1TObjects/src/L1GtExternalTemplate.cc

Go to the documentation of this file.
00001 
00022 // this class header
00023 #include "CondFormats/L1TObjects/interface/L1GtExternalTemplate.h"
00024 
00025 // system include files
00026 
00027 #include <iostream>
00028 #include <iomanip>
00029 
00030 // user include files
00031 
00032 //   base class
00033 
00034 #include "CondFormats/L1TObjects/interface/L1GtFwd.h"
00035 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetupFwd.h"
00036 
00037 // forward declarations
00038 
00039 // constructors
00040 L1GtExternalTemplate::L1GtExternalTemplate()
00041         : L1GtCondition()
00042 {
00043 
00044     m_condCategory = CondExternal;
00045     m_condType = TypeExternal;
00046 
00047 }
00048 
00049 L1GtExternalTemplate::L1GtExternalTemplate(const std::string& cName)
00050         : L1GtCondition(cName)
00051 {
00052 
00053     m_condCategory = CondExternal;
00054     m_condType = TypeExternal;
00055 
00056 }
00057 
00058 L1GtExternalTemplate::L1GtExternalTemplate(const std::string& cName, const L1GtConditionType& cType)
00059         : L1GtCondition(cName, CondEnergySum, cType)
00060 {
00061 
00062     m_condCategory = CondExternal;
00063     m_condType = TypeExternal;
00064 
00065     // actually no objects are sent by External, only the result of the condition
00066     int nObjects = nrObjects();
00067 
00068     if (nObjects > 0) {
00069         m_objectType.reserve(nObjects);
00070     }
00071 
00072 }
00073 
00074 // copy constructor
00075 L1GtExternalTemplate::L1GtExternalTemplate(const L1GtExternalTemplate& cp)
00076         : L1GtCondition(cp.m_condName)
00077 {
00078     copy(cp);
00079 }
00080 
00081 // destructor
00082 L1GtExternalTemplate::~L1GtExternalTemplate()
00083 {
00084     // empty now
00085 }
00086 
00087 // assign operator
00088 L1GtExternalTemplate& L1GtExternalTemplate::operator= (const L1GtExternalTemplate& cp)
00089 {
00090 
00091     copy(cp);
00092     return *this;
00093 }
00094 
00095 
00096 void L1GtExternalTemplate::print(std::ostream& myCout) const
00097 {
00098 
00099     myCout << "\n  L1GtExternalTemplate print..." << std::endl;
00100 
00101     L1GtCondition::print(myCout);
00102 
00103 
00104     // reset to decimal output
00105     myCout << std::dec << std::endl;
00106 }
00107 
00108 void L1GtExternalTemplate::copy(const L1GtExternalTemplate& cp)
00109 {
00110 
00111     m_condName     = cp.condName();
00112     m_condCategory = cp.condCategory();
00113     m_condType     = cp.condType();
00114     m_objectType   = cp.objectType();
00115     m_condGEq      = cp.condGEq();
00116     m_condChipNr   = cp.condChipNr();
00117 
00118 }
00119 
00120 // output stream operator
00121 std::ostream& operator<<(std::ostream& os, const L1GtExternalTemplate& result)
00122 {
00123     result.print(os);
00124     return os;
00125 
00126 }
00127 
00128