Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

cfg::Observer Class Reference

Defines the base class for classes which use cfg::Config parameters. More...

#include <Observer.h>

Inheritance diagram for cfg::Observer:

DetectorViewOption evd::Display3D evd::RecoBaseDrawer evd::SimulationDrawer jobc::Module TestObs TestObserver calhit::CalHit cellhitmerge::CellHitMerge clust::Clust2D cluster::Clusterer clusterss::ClusterCheck clusterss::CompareClusters clusterss::Make3DClusterSS clusterss::MakeClusterSS ctrk::CosmicTrack demo::Module evgen::CosmicsGen evgen::GENIEGen evgen::SingleGen fillntup::FillNtup hdr::JobRecord jobc::ResourceSummary mcchk::CosmicAna mcchk::DetAna mcchk::NeutrinoAna ModuleA novamc::NOVAMC photrans::SimpleTransport RICHReco rpr::FindTrackSeg rpr::TrackReco rsim::SimpleReadout sim::TruthFilter spider::SpiderWeb subshower::RecoSubShower subshower::RecoSubShower2D subshower::RecoSubShower3D TPCdEdx TPCPass1 TPCPass2 trk::CirceFit trk::DemoShell vali::Validator List of all members.

Public Member Functions

virtual ~Observer ()
 Defines the interface for cfg::Config clients.
virtual void Update (const cfg::Config &c)=0
void RemoveWatch (const char *config)
void RemoveAllWatches ()
void SetWatch (const char *config, const char *version="default")

Detailed Description

Defines the base class for classes which use cfg::Config parameters.

Definition at line 14 of file Observer.h.


Constructor & Destructor Documentation

cfg::Observer::~Observer  )  [virtual]
 

Defines the interface for cfg::Config clients.

Definition at line 18 of file Observer.cxx.

References RemoveAllWatches().

00018 { this->RemoveAllWatches(); }


Member Function Documentation

void cfg::Observer::RemoveAllWatches  ) 
 

Definition at line 32 of file Observer.cxx.

References cfg::Table::Instance(), and cfg::Table::RemoveAllWatches().

Referenced by cluster::Clusterer::~Clusterer(), ~Observer(), and spider::SpiderWeb::~SpiderWeb().

00033 {
00034 //======================================================================
00035 // Remove all watches set by this observer
00036 //======================================================================
00037   cfg::Table::Instance().RemoveAllWatches(this);
00038 }

void cfg::Observer::RemoveWatch const char *  config  ) 
 

Definition at line 22 of file Observer.cxx.

References cfg::Table::Instance(), and cfg::Table::RemoveWatch().

00023 {
00024 //======================================================================
00025 // Remove this observer from the list of clients of config
00026 //======================================================================
00027   cfg::Table::Instance().RemoveWatch(config,this);
00028 }

void cfg::Observer::SetWatch const char *  config,
const char *  version = "default"
 

Definition at line 42 of file Observer.cxx.

References cfg::Table::GetConfig(), cfg::Table::Instance(), cfg::Table::SetWatch(), and Update().

Referenced by evgen::CosmicsGen::CosmicsGen(), DetectorViewOption::DetectorViewOption(), evd::Display3D::Display3D(), evgen::GENIEGen::GENIEGen(), main(), evd::RecoBaseDrawer::RecoBaseDrawer(), evd::SimulationDrawer::SimulationDrawer(), evgen::SingleGen::SingleGen(), spider::SpiderWeb::SpiderWeb(), TestObs::TestObs(), and TestObserver::TestObserver().

00043 {
00044 //======================================================================
00045 // Set a watch for the named version of the configuration config
00046 //======================================================================
00047   // Set the new watch
00048   cfg::Table::Instance().SetWatch(config, version, this);
00049 
00050   // Trigger the first update
00051   cfg::Config* c = cfg::Table::Instance().GetConfig(config, version);
00052   if (c) try { this->Update(*c); }
00053   catch (cfg::Exception e) { 
00054     std::cout << " *-> " << config << "." << version << " ";
00055     e.Print(); 
00056     exit(-1);
00057   }
00058 }

virtual void cfg::Observer::Update const cfg::Config c  )  [pure virtual]
 

Implemented in calhit::CalHit, cellhitmerge::CellHitMerge, clust::Clust2D, cluster::Clusterer, clusterss::ClusterCheck, clusterss::CompareClusters, clusterss::Make3DClusterSS, clusterss::MakeClusterSS, ctrk::CosmicTrack, demo::Module, DetectorViewOption, evd::Display3D, evd::RecoBaseDrawer, evd::SimulationDrawer, evgen::CosmicsGen, evgen::GENIEGen, evgen::SingleGen, fillntup::FillNtup, hdr::JobRecord, mcchk::CosmicAna, mcchk::DetAna, mcchk::NeutrinoAna, novamc::NOVAMC, photrans::SimpleTransport, rsim::SimpleReadout, rpr::FindTrackSeg, rpr::TrackReco, subshower::RecoSubShower, subshower::RecoSubShower2D, subshower::RecoSubShower3D, sim::TruthFilter, spider::SpiderWeb, trk::CirceFit, trk::DemoShell, vali::Validator, TestObserver, TestObs, jobc::ResourceSummary, RICHReco, ModuleA, TPCdEdx, TPCPass1, and TPCPass2.

Referenced by SetWatch().


The documentation for this class was generated from the following files:
Generated on Sun Nov 22 04:45:30 2009 for NOvA Offline by  doxygen 1.3.9.1