10#include <arich/calibration/ARICHCalibrationChecker.h>
13#include <arich/utility/ARICHChannelHist.h>
14#include <arich/dbobjects/ARICHChannelMask.h>
17#include <framework/database/Database.h>
18#include <framework/database/DBStore.h>
19#include <framework/database/Configuration.h>
20#include <framework/datastore/DataStore.h>
69 B2FATAL(
"Setting both testing payload and Global Tag or setting no one of them.");
82 if (modID <= 42)
return 1;
83 if (modID <= 90)
return 2;
84 if (modID <= 144)
return 3;
85 if (modID <= 204)
return 4;
86 if (modID <= 270)
return 5;
87 if (modID <= 342)
return 6;
88 if (modID <= 420)
return 7;
94 if (
getRing(modID) == 1)
return (modID - 1) / 7 + 1;
95 if (
getRing(modID) == 2)
return (modID - 43) / 8 + 1;
96 if (
getRing(modID) == 3)
return (modID - 91) / 9 + 1;
97 if (
getRing(modID) == 4)
return (modID - 145) / 10 + 1;
98 if (
getRing(modID) == 5)
return (modID - 205) / 11 + 1;
99 if (
getRing(modID) == 6)
return (modID - 271) / 12 + 1;
100 if (
getRing(modID) == 7)
return (modID - 343) / 13 + 1;
111 B2FATAL(
"ARICHChannelMask is not valid.");
115 float frac_masked_sector[6] = {0.};
116 float frac_masked = 0.;
117 TFile* channelMaskResults =
119 TTree* maskTree =
new TTree(
"arich_masked",
"ARICH channel masking");
120 maskTree->Branch(
"experiment", &
m_experiment,
"experiment/I");
121 maskTree->Branch(
"run", &
m_run,
"run/I");
122 maskTree->Branch(
"frac_masked_sector", &frac_masked_sector,
"frac_masked_sector[6]/F");
123 maskTree->Branch(
"frac_masked", &frac_masked,
"frac_masked/F");
125 for (
int mod = 1; mod < 421; mod++) {
127 for (
int chn = 0; chn < 144; chn++) {
128 if (!channelMask->isActive(mod, chn)) { frac_masked_sector[sector - 1]++; frac_masked++;}
132 for (
int sec = 0; sec < 6; sec++) frac_masked_sector[sec] /= 10080.;
133 frac_masked /= 60480.;
138 delete channelMaskResults;
void checkChannelMask()
Check channel mask.
void resetDatabase()
Reset the database.
void initializeDatabase()
Initialize the database.
std::string m_channelMaskResultsFile
Output file for channel mask results.
int getRing(int modID)
Get HAPD ring number.
int getSector(int modID)
Get HAPD sector number.
void setExperimentRun(int experiment, int run)
Set experiment and run numbers.
std::string m_GlobalTagName
Global Tag name.
std::string m_testingPayloadName
Testing payload location.
~ARICHCalibrationChecker()
Destructor.
int m_experiment
Experiment number.
ARICHCalibrationChecker()
Constructor.
void printPayloadInformation(DBObjPtr< T > &dbObject)
Print payload information.
StoreObjPtr< EventMetaData > m_EventMetaData
Event metadata.
static Configuration & getInstance()
Get a reference to the instance which will be used when the Database is initialized.
bool isValid() const
Check whether a valid object was obtained from the database.
Class for accessing objects in the database.
Singleton class to cache database objects.
static DataStore & Instance()
Instance of singleton Store.
void setInitializeActive(bool active)
Setter for m_initializeActive.
void reset(EDurability durability)
Frees memory occupied by data store items and removes all objects from the map.
void reset(bool keepEntries=false)
Invalidate all payloads.
static Database & Instance()
Instance of a singleton Database.
static DBStore & Instance()
Instance of a singleton DBStore.
void updateEvent()
Updates all intra-run dependent objects.
void update()
Updates all objects that are outside their interval of validity.
static void reset(bool keepConfig=false)
Reset the database instance.
Abstract base class for different kinds of events.