24int main(
int argc,
char **argv)
37 JParser<> zap(
"Example program to test policy method for missing module data.");
47 catch(
const exception &error) {
54 FATAL(
"Invalid probability " << P <<
endl);
79 strings[
module->getString()].count += 1;
85 if (
gRandom->Rndm() <= P || strings[
module->getString()].count == 1)
86 buffer.insert(module->getID());
88 strings[
module->getString()].count -= 1;
94 const JPolicy policy(router, buffer.begin(), buffer.end(), size);
98 const int id =
module->getID();
100 if (
debug >= debug_t || buffer.count(
id) == 0) {
102 cout <<
"module: " <<
setw(10) <<
id <<
' '
103 << getLabel(
module->getLocation()) <<
' '
104 << buffer.count(
id) << flush;
106 if (buffer.count(
id) == 0) {
110 if (
module->getFloor() != 0) {
112 const JPolicy::mapped_type result = policy.at(
id);
114 for (JPolicy::mapped_type::const_iterator i = result.begin(); i != result.end(); ++i) {
120 cout <<
' ' <<
"skip";
127 if (
module->getFloor() != 0) {
128 ASSERT(buffer.count(
id) != 0 || !policy.at(
id).empty(),
"Test policy module at " <<
module->getLocation());
Data structure for detector geometry and calibration.
General purpose messaging.
#define DEBUG(A)
Message macros.
#define ASSERT(A,...)
Assert macro.
Direct access to module in detector data structure.
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
int main(int argc, char **argv)
Policy for invalid modules.
const JLocation & getLocation() const
Get location.
Router for direct addressing of module data in detector data structure.
const JModule & getModule(const JObjectID &id) const
Get module parameters.
Template definition of a multi-dimensional oscillation probability interpolation table.
Utility class to parse command line options.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary class to define policy for invalid modules.