ATLAS Offline Software
Loading...
Searching...
No Matches
StatusFlagCommentCOOL.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4
5#ifndef dqutilsStatusFlagCommentCOOL_h
6#define dqutilsStatusFlagCommentCOOL_h
7
8// Protect CINT from some system definitions that cause problems
9#ifndef __CINT__
10//COOL API include files (CoolKernel)
11 #include "CoolKernel/pointers.h"
12 #include "CoolKernel/ValidityKey.h"
13#else
14namespace cool {
15 class IDatabasePtr;
16 class IFolderPtr;
17}
18#endif
19
20
21#include <iostream>
22#include <string>
23#include <cstdlib>
24
25#include <TObject.h>
26
27//CORAL API include files
28#include "CoralBase/AttributeList.h"
29
30//COOL API include files (CoolApplication)
31#include "CoolApplication/Application.h"
32// --> limits.h is needed for CoolKernel/types.h
33#include <limits.h>
34#include "CoolKernel/types.h"
35#include "CoolKernel/ChannelId.h"
36#include "CoolKernel/RecordSpecification.h"
37#include "CoolKernel/ChannelSelection.h"
38
40
41namespace coral {
42 class AttributeList;
43}
44
45namespace cool {
46 class RecordSpecification;
47 class ChannelSelection;
48}
49
50
51namespace dqutils {
53 public:
54 // Methods needed to come up to COOL framework.
55 cool::RecordSpecification createSpec();
56 coral::AttributeList createPayload(int colourCode, float dfrac, float thrust, std::string& comment, const
57 cool::RecordSpecification& spec);
58
59 // Constructors and Destructors.
60 StatusFlagCommentCOOL(const std::string& dbStr, const std::string& folderStr, int runS, int lumiS, int runU,
61 int lumiU);
62 StatusFlagCommentCOOL(int runS, int lumiS, int runU, int lumiU);
65
66 // Methods of "interest". To insert a status flag you can use either ChannelId or ChannelName.
67 void insert(cool::ChannelId channelId, int code, float dfrac, float thrust, std::string comment,
68 const std::string& tag_name);
69 void insert(const std::string& channelName, int code, float dfrac, float thrust, const std::string& comment,
70 const std::string& tag_name);
71
72 // Needed for the ROOT interface.
73 ClassDef(StatusFlagCommentCOOL, 0) // A class for modifying DQ info in the COOL database
74 };
75}
76
77#endif
StatusFlagCOOLBase(const std::string &dbStr, const std::string &folderStr, int runS, int lumiS, int runU, int lumiU)
void insert(cool::ChannelId channelId, int code, float dfrac, float thrust, std::string comment, const std::string &tag_name)
cool::RecordSpecification createSpec()
StatusFlagCommentCOOL(int runS, int lumiS, int runU, int lumiU)
StatusFlagCommentCOOL(const std::string &dbStr, const std::string &folderStr, int runS, int lumiS, int runU, int lumiU)
void insert(const std::string &channelName, int code, float dfrac, float thrust, const std::string &comment, const std::string &tag_name)
coral::AttributeList createPayload(int colourCode, float dfrac, float thrust, std::string &comment, const cool::RecordSpecification &spec)