4 #include <pdbcalbase/PdbBankManager.h>
5 #include <pdbcalbase/PdbApplication.h>
6 #include <pdbcalbase/PdbBankList.h>
7 #include <pdbcalbase/PdbCalBank.h>
8 #include <pdbcalbase/PdbParameterMap.h>
9 #include <pdbcalbase/PdbParameterMapContainer.h>
15 #include <TBufferXML.h>
26 superdetectorname(name)
62 cout <<
PHWHERE <<
" layer " << layer <<
" already exists for "
72 map<int, PHParameters *>::const_iterator iter =
parametermap.find(layer);
75 cout <<
"could not find parameters for layer " << layer
85 map<int, PHParameters *>::iterator iter =
parametermap.find(layer);
96 ostringstream fullpath;
97 ostringstream fnamestream;
103 if (*(dir.rbegin()) !=
'/')
108 <<
"-" << TStart.
getTics() <<
"-" << TStop.
getTics() <<
"-" << time(0)
110 string fname = fnamestream.str();
111 std::transform(fname.begin(), fname.end(), fname.begin(), ::tolower);
114 cout <<
"PHParameters::WriteToFile - save to "<<fullpath.str()<<endl;
118 TFile *f = TFile::Open(fullpath.str().c_str(),
"recreate");
121 string floatformat = TBufferXML::GetFloatFormat();
122 TBufferXML::SetFloatFormat(
"%.15e");
126 TBufferXML::SetFloatFormat(floatformat.c_str());
127 cout <<
"sleeping 1 second to prevent duplicate inserttimes" << endl;
139 cout <<
PHWHERE <<
" Aborting, Database not writable" << endl;
140 application->
abort();
150 std::transform(tablename.begin(), tablename.end(), tablename.begin(),
153 "Geometry Parameters", TStart, TStop, tablename);
159 application->
commit(NewBank);
164 cout <<
PHWHERE " Committing to DB failed" << endl;
173 std::map<int, PHParameters *>::const_iterator iter;
177 iter->second->CopyToPdbParameterMap(myparm);
186 cout <<
"Name: " <<
Name() << endl;
187 map<int, PHParameters *>::const_iterator iter;
190 cout <<
"parameter detid: " << iter->first << endl;
191 iter->second->Print();
PHBoolean addNode(PHNode *)
void CopyToPdbParameterMapContainer(PdbParameterMapContainer *myparm)
int WriteToFile(const std::string &extension, const std::string &dir)
PHParametersContainer(const std::string &name="NONE")
std::map< int, PHParameters * > parametermap
virtual ~PHParametersContainer()
int ExistDetid(const int detid) const
void SaveToNodeTree(PHCompositeNode *topNode, const std::string &nodename)
PHParameters * GetParametersToModify(const int layer)
const PHParameters * GetParameters(const int layer) const
std::string superdetectorname
void AddPHParameters(const int layer, PHParameters *params)
void FillFrom(const PdbParameterMapContainer *saveparamcontainer)
void FillFrom(const PdbParameterMap *saveparams)
virtual PdbStatus abort()=0
virtual PdbStatus commit()=0
virtual PdbStatus startUpdate()=0
int getInternalValue() const
static PdbBankManager * instance()
virtual PdbApplication * getApplication()=0
virtual PdbCalBank * createBank(const std::string &, PdbBankID, const std::string &, PHTimeStamp &, PHTimeStamp &, const std::string &)=0
virtual void setLength(size_t val)=0
virtual PdbCalChan & getEntry(size_t)=0
parConstRange get_ParameterMaps() const
void AddPdbParameterMap(const int layer, PdbParameterMap *params)
parMap::const_iterator parIter
std::pair< parIter, parIter > parConstRange