40 std::vector<edm::ParameterSet>
data = iConfig.
getParameter<std::vector<edm::ParameterSet> >(
"input");
41 std::vector<edm::ParameterSet>::iterator request = data.begin ();
42 for (; request != data.end (); request++) {
43 std::string
objectName = request->getParameter<std::string> (
"object");
46 if (objectName ==
"Pedestals") {
48 findingRecord <CastorPedestalsRcd> ();
50 else if (objectName ==
"PedestalWidths") {
52 findingRecord <CastorPedestalWidthsRcd> ();
54 else if (objectName ==
"Gains") {
56 findingRecord <CastorGainsRcd> ();
58 else if (objectName ==
"GainWidths") {
60 findingRecord <CastorGainWidthsRcd> ();
62 else if (objectName ==
"QIEData") {
64 findingRecord <CastorQIEDataRcd> ();
66 else if (objectName ==
"ChannelQuality") {
68 findingRecord <CastorChannelQualityRcd> ();
70 else if (objectName ==
"ElectronicsMap") {
72 findingRecord <CastorElectronicsMapRcd> ();
75 std::cerr <<
"CastorTextCalibrations-> Unknown object name '" << objectName
76 <<
"', known names are: "
77 <<
"Pedestals PedestalWidths Gains GainWidths QIEData ChannelQuality ElectronicsMap"
101 std::auto_ptr<T>
result (
new T ());
102 std::ifstream inStream (fFile.c_str ());
103 if (!inStream.good ()) {
104 std::cerr <<
"CastorTextCalibrations-> Unable to open file '" << fFile <<
"'" << std::endl;
105 throw cms::Exception(
"FileNotFound") <<
"Unable to open '" << fFile <<
"'" << std::endl;
108 std::cerr <<
"CastorTextCalibrations-> Can not read object from file '" << fFile <<
"'" << std::endl;
109 throw cms::Exception(
"ReadError") <<
"Can not read object from file '" << fFile <<
"'" << std::endl;
116 return produce_impl<CastorPedestals> (mInputs [
"Pedestals"]);
120 return produce_impl<CastorPedestalWidths> (mInputs [
"PedestalWidths"]);
124 return produce_impl<CastorGains> (mInputs [
"Gains"]);
128 return produce_impl<CastorGainWidths> (mInputs [
"GainWidths"]);
132 return produce_impl<CastorQIEData> (mInputs [
"QIEData"]);
136 return produce_impl<CastorChannelQuality> (mInputs [
"ChannelQuality"]);
140 return produce_impl<CastorElectronicsMap> (mInputs [
"ElectronicsMap"]);
T getParameter(std::string const &) const
std::auto_ptr< CastorElectronicsMap > produceElectronicsMap(const CastorElectronicsMapRcd &rcd)
std::auto_ptr< CastorChannelQuality > produceChannelQuality(const CastorChannelQualityRcd &rcd)
static const IOVSyncValue & endOfTime()
virtual void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &)
std::pair< Time_t, Time_t > ValidityInterval
static const IOVSyncValue & beginOfTime()
bool getObject(std::istream &fInput, CastorPedestals *fObject)
const char * name() const
~CastorTextCalibrations()
std::auto_ptr< CastorPedestals > producePedestals(const CastorPedestalsRcd &rcd)
std::auto_ptr< CastorPedestalWidths > producePedestalWidths(const CastorPedestalWidthsRcd &rcd)
std::auto_ptr< CastorQIEData > produceQIEData(const CastorQIEDataRcd &rcd)
std::auto_ptr< CastorGainWidths > produceGainWidths(const CastorGainWidthsRcd &rcd)
CastorTextCalibrations(const edm::ParameterSet &)
std::string fullPath() const
std::auto_ptr< T > produce_impl(const std::string &fFile)
std::auto_ptr< CastorGains > produceGains(const CastorGainsRcd &rcd)