37 cool::IDatabaseSvc& dbSvc = this->databaseService();
39 return dbSvc.openDatabase(dbStr.c_str(), readOnly);
41 catch (cool::DatabaseDoesNotExist&) {
42 std::cerr <<
"Error! Database does not exist!" << std::endl;
51 cool::IFolderPtr folder =
m_coolDb->getFolder(folderStr.c_str());
55 catch (cool::FolderNotFound&) {
56 std::cerr <<
"Error! Folder '" << folderStr <<
"' does not exist!" << std::endl;
81 setIOV(cool::Int64 runS, cool::Int64 lumiS, cool::Int64 runU, cool::Int64 lumiU) {
98 cool::Int64 runS =
m_since >> 32;
99 cool::Int64 lumiS =
m_since - (runS << 32);
100 cool::Int64 runU =
m_until >> 32;
101 cool::Int64 lumiU =
m_until - (runU << 32);
102 std::cout <<
"Using IOVrange [(" << runS <<
"," << lumiS <<
"),(" << runU <<
"," << lumiU <<
")] " <<
"[" <<
108 CoolOpen(
const std::string& dbStr) {
119 cool::RecordSpecification
123 cool::RecordSpecification spec;
124 spec.extend(
"Chamber_Name", cool::StorageType::String255);
125 spec.extend(
"Dead_multilayer", cool::StorageType::String255);
126 spec.extend(
"Dead_layer", cool::StorageType::String255);
127 spec.extend(
"Dead_mezz", cool::StorageType::String255);
128 spec.extend(
"Dead_asd", cool::StorageType::String255);
129 spec.extend(
"Dead_tube", cool::StorageType::String4k);
138 std::cerr <<
"ERROR Source and destination folder specifications differ." << std::endl;
147 const std::string& DeadMultilayer,
148 const std::string& DeadLayer,
149 const std::string& DeadMezz,
150 const std::string& DeadAsd,
151 const std::string& DeadTube,
152 const cool::RecordSpecification& spec) {
155 coral::AttributeList payload = cool::Record(spec).attributeList();
157 payload[
"Chamber_Name"].data<cool::String255>() = ChamberName;
158 payload[
"Dead_multilayer"].data<cool::String255>() = DeadMultilayer;
159 payload[
"Dead_layer"].data<cool::String255>() = DeadLayer;
160 payload[
"Dead_mezz"].data<cool::String255>() = DeadMezz;
161 payload[
"Dead_asd"].data<cool::String255>() = DeadAsd;
162 payload[
"Dead_tube"].data<cool::String4k>() = DeadTube;
169 cool::RecordSpecification
173 cool::RecordSpecification spec;
174 spec.extend(
"Chamber_Name", cool::StorageType::String255);
175 spec.extend(
"Noisy_multilayer", cool::StorageType::String255);
176 spec.extend(
"Noisy_layer", cool::StorageType::String255);
177 spec.extend(
"Noisy_mezz", cool::StorageType::String255);
178 spec.extend(
"Noisy_asd", cool::StorageType::String255);
179 spec.extend(
"Noisy_tube", cool::StorageType::String4k);
188 std::cerr <<
"ERROR Source and destination folder specifications differ." << std::endl;
197 const std::string& NoisyMultilayer,
198 const std::string& NoisyLayer,
199 const std::string& NoisyMezz,
200 const std::string& NoisyAsd,
201 const std::string& NoisyTube,
202 const cool::RecordSpecification& spec) {
205 coral::AttributeList payload = cool::Record(spec).attributeList();
207 payload[
"Chamber_Name"].data<cool::String255>() = ChamberName;
208 payload[
"Noisy_multilayer"].data<cool::String255>() = NoisyMultilayer;
209 payload[
"Noisy_layer"].data<cool::String255>() = NoisyLayer;
210 payload[
"Noisy_mezz"].data<cool::String255>() = NoisyMezz;
211 payload[
"Noisy_asd"].data<cool::String255>() = NoisyAsd;
212 payload[
"Noisy_tube"].data<cool::String4k>() = NoisyTube;
225 while (objects->goToNext()) {
226 const cool::IObject& element = objects->currentRef();
227 std::cout << element << std::endl;
230 catch (cool::Exception& e) {
231 std::cout <<
"Unknown exception caught!" << e.what() << std::endl;
232 std::cout <<
" dentro create payload" << std::endl;
238 dumpField(cool::ChannelId channelId,
const std::string & field) {
241 cool::ChannelSelection
selection = cool::ChannelSelection(channelId);
243 while (objects->goToNext()) {
244 const cool::IObject& element = objects->currentRef();
245 result = element.payloadValue(field);
248 catch (cool::Exception& e) {
249 std::cout <<
"Unknown exception caught!" << e.what() << std::endl;
256 dumpCode(
const std::string& channelName) {
258 return atoi(result.c_str());
264 this->
dump(cool::ChannelSelection::all());
270 cool::ChannelId channelId,
271 const std::string& ChamberName,
272 const std::string& DeadMultilayer,
273 const std::string& DeadLayer,
274 const std::string& DeadMezz,
275 const std::string& DeadAsd,
276 const std::string& DeadTube,
277 const std::string& cool_tag) {
280 coral::AttributeList payload = this->
createPayloadDataDead(ChamberName, DeadMultilayer, DeadLayer, DeadMezz,
281 DeadAsd, DeadTube, spec);
282 cool::ValidityKey since_u = (
run << 32);
283 cool::ValidityKey until_u = (
run + 1) << 32;
284 m_coolFolder->storeObject(since_u, until_u, cool::Record(
285 m_coolFolder->payloadSpecification(), payload), channelId, cool_tag);
288 catch (cool::Exception& e) {
289 std::cerr <<
" dentro create insert" << std::endl;
290 std::cerr <<
"Unknown exception caught!" << e.what() << std::endl;
297 cool::ChannelId channelId,
298 const std::string& ChamberName,
299 const std::string& DeadMultilayer,
300 const std::string& DeadLayer,
301 const std::string& DeadMezz,
302 const std::string& DeadAsd,
303 const std::string& DeadTube) {
304 std::cout <<
"Trying to store payload [channel " << std::endl;
307 coral::AttributeList payload = this->
createPayloadDataDead(ChamberName, DeadMultilayer, DeadLayer, DeadMezz,
308 DeadAsd, DeadTube, spec);
309 cool::ValidityKey since_u = (
run << 32);
310 cool::ValidityKey until_u = (
run + 1) << 32;
315 catch (cool::Exception& e) {
316 std::cerr <<
" dentro create insert" << std::endl;
317 std::cerr <<
"Unknown exception caught!" << e.what() << std::endl;
328 cool::ChannelId channelId,
329 const std::string& ChamberName,
330 const std::string& NoisyMultilayer,
331 const std::string& NoisyLayer,
332 const std::string& NoisyMezz,
333 const std::string& NoisyAsd,
334 const std::string& NoisyTube,
335 const std::string& cool_tag) {
338 coral::AttributeList payload = this->
createPayloadDataNoisy(ChamberName, NoisyMultilayer, NoisyLayer, NoisyMezz,
339 NoisyAsd, NoisyTube, spec);
340 cool::ValidityKey since_u = (
run << 32);
341 cool::ValidityKey until_u = (
run + 1) << 32;
342 m_coolFolder->storeObject(since_u, until_u, cool::Record(
343 m_coolFolder->payloadSpecification(), payload), channelId, cool_tag);
346 catch (cool::Exception& e) {
347 std::cerr <<
" dentro create insert" << std::endl;
348 std::cerr <<
"Unknown exception caught!" << e.what() << std::endl;
355 cool::ChannelId channelId,
356 const std::string& ChamberName,
357 const std::string& NoisyMultilayer,
358 const std::string& NoisyLayer,
359 const std::string& NoisyMezz,
360 const std::string& NoisyAsd,
361 const std::string& NoisyTube) {
362 std::cout <<
"Trying to store payload [channel " << std::endl;
365 coral::AttributeList payload = this->
createPayloadDataNoisy(ChamberName, NoisyMultilayer, NoisyLayer, NoisyMezz,
366 NoisyAsd, NoisyTube, spec);
367 cool::ValidityKey since_u = (
run << 32);
368 cool::ValidityKey until_u = (
run + 1) << 32;
373 catch (cool::Exception& e) {
374 std::cerr <<
" dentro create insert" << std::endl;
375 std::cerr <<
"Unknown exception caught!" << e.what() << std::endl;