Public Member Functions | Private Member Functions | Private Attributes | List of all members
fhicl::detail::ParameterBase Class Referenceabstract

#include <ParameterBase.h>

Inheritance diagram for fhicl::detail::ParameterBase:
fhicl::detail::AtomBase fhicl::detail::DelegateBase fhicl::detail::SequenceBase fhicl::detail::TableBase fhicl::Atom< art::InputTag > fhicl::Atom< art::ScheduleID::size_type > fhicl::Atom< bool > fhicl::Atom< double > fhicl::Atom< float > fhicl::Atom< geo::fhicl::Table::CryostatID_t > fhicl::Atom< geo::fhicl::Table::OpDetID_t > fhicl::Atom< geo::fhicl::Table::PlaneID_t > fhicl::Atom< geo::fhicl::Table::TPCID_t > fhicl::Atom< geo::fhicl::Table::WireID_t > fhicl::Atom< int > fhicl::Atom< int64_t > fhicl::Atom< Path_t::Depth_t > fhicl::Atom< Pedestal_t > fhicl::Atom< raw::ADC_Count_t > fhicl::Atom< raw::ChannelID_t > fhicl::Atom< readout::readout::ROPID::ROPID_t > fhicl::Atom< readout::TPCsetID::TPCsetID_t > fhicl::Atom< seed_t > fhicl::Atom< short > fhicl::Atom< size_t > fhicl::Atom< std::string > fhicl::Atom< string > fhicl::Atom< uint32_t > fhicl::Atom< unsigned > fhicl::Atom< unsigned int > fhicl::Atom< unsigned long long > fhicl::Atom< T > fhicl::OptionalAtom< T > fhicl::OptionalAtom< art::InputTag > fhicl::OptionalAtom< bool > fhicl::OptionalAtom< double > fhicl::OptionalAtom< EventNumber_t > fhicl::OptionalAtom< int > fhicl::OptionalAtom< rndm::NuRandomService::seed_t > fhicl::OptionalAtom< RunNumber_t > fhicl::OptionalAtom< short > fhicl::OptionalAtom< size_t > fhicl::OptionalAtom< std::string > fhicl::OptionalAtom< SubRunNumber_t > fhicl::OptionalAtom< unsigned int > fhicl::DelegatedParameter fhicl::OptionalDelegatedParameter fhicl::OptionalSequence< T, N > fhicl::OptionalSequence< T,-1ull > fhicl::OptionalTuple< T > fhicl::Sequence< T, N > fhicl::Sequence< T,-1ull > fhicl::Tuple< T > fhicl::OptionalSequence< art::InputTag > fhicl::OptionalSequence< fhicl::TupleAs< art::test::TypeAndInstance(std::string, std::string)> > fhicl::OptionalSequence< fhicl::TupleAs< art::test::TypeAndTag(std::string, art::art::InputTag)> > fhicl::OptionalSequence< std::string > fhicl::OptionalTuple< ARGS... > fhicl::Sequence< art::InputTag > fhicl::Sequence< double > fhicl::Sequence< double, 3 > fhicl::Sequence< double, 5 > fhicl::Sequence< fhicl::Sequence< double > > fhicl::Sequence< fhicl::Table< lar::example::tests::ParticleMaker::ParticleConfig > > fhicl::Sequence< fhicl::Table< recob::test::HitDataProductChecker::Config::TargetInfo > > fhicl::Sequence< fhicl::TupleAs< SwitchPoint(std::string, fhicl::Sequence< std::uint32_t >)> > fhicl::Sequence< float > fhicl::Sequence< float, 3u > fhicl::Sequence< int > fhicl::Sequence< size_t > fhicl::Sequence< std::string > fhicl::Sequence< string > fhicl::Sequence< unsigned int > fhicl::OptionalTable< T > fhicl::Table< T, KeysToIgnore > fhicl::OptionalTable< art::Scheduler::Config::DebugConfig > fhicl::OptionalTable< art::test::TopLevelTable::Source > fhicl::OptionalTable< Config > fhicl::OptionalTable< geo::GeometryInfoCheck::GeometryInfoConfig > fhicl::Table< art::detail::Analyzer::Table::FullConfig< UserConfig >, KeysToIgnore_t > fhicl::Table< art::ProducerTable::FullConfig< UserConfig, ImplicitConfig >, KeysToIgnore_t > fhicl::Table< art::test::TopLevelTable::TestProperties > fhicl::Table< art::TimeTracker::Config::DBoutput > fhicl::Table< art::ToolConfigTable::FullConfig< Config >, KeysToIgnore_t > fhicl::Table< art::ToolConfigTable::FullConfig< UserConfig >, KeysToIgnore_t > fhicl::Table< calo::calo::CalorimetryAlg::calo::GnocchiCalorimetry::Config > fhicl::Table< calo::CalorimetryAlg::img::DataProviderAlg::Config > fhicl::Table< calo::CalorimetryAlg::nnet::PointIdEffTest::Config > fhicl::Table< calo::CalorimetryAlg::pdune::RecoStats::Config > fhicl::Table< calo::CalorimetryAlg::pdunedp::Purity::Config > fhicl::Table< cheat::BackTracker::cheat::BackTrackerService::fhiclConfig > fhicl::Table< cheat::ParticleInventory::ParticleInventoryConfig > fhicl::Table< cheat::PhotonBackTracker::cheat::PhotonBackTrackerService::fhiclConfig > fhicl::Table< Config > fhicl::Table< evgen::evgen::ActiveVolumeVertexSampler::evgen::MarleyGen::Config > fhicl::Table< evgen::evgen::ActiveVolumeVertexSampler::evgen::MarleyTimeGen::Config > fhicl::Table< fhicl::CondConfig::BoxParameters > fhicl::Table< fhicl::CondConfig::SphereParameters > fhicl::Table< img::DataProviderAlg::pma::PMAlgTracker::Config > fhicl::Table< lar::example::lar::example::TotallyCheatTrackingAlg::lar::example::TotallyCheatTracker::Config > fhicl::Table< lar::example::SpacePointIsolationAlg::lar::example::RemoveIsolatedSpacePoints::Config > fhicl::Table< mf::service::ELdestination::MsgFormatSettings::mf::service::ELdestination::Config > fhicl::Table< nnet::nnet::PointIdAlg::nnet::EmTrackClusterId2out::Config > fhicl::Table< nnet::nnet::PointIdAlg::nnet::EmTrackClusterId::Config > fhicl::Table< nnet::nnet::PointIdAlg::nnet::EmTrackMichelId::Config > fhicl::Table< nnet::nnet::PointIdAlg::nnet::ParticleDecayId::Config > fhicl::Table< nnet::nnet::TrainingDataAlg::nnet::PointIdTrainingData::Config > fhicl::Table< nnet::nnet::TrainingDataAlg::nnet::SPMultiTpcDump::Config > fhicl::Table< pma::PMAlgCosmicTagger::trkf::PMAlgTrackMaker::Config > fhicl::Table< pma::PMAlgFitter::trkf::PMAlgTrajFitter::Config > fhicl::Table< pma::PMAlgStitching::trkf::PMAlgTrackMaker::Config > fhicl::Table< pma::PMAlgTracker::trkf::PMAlgTrackMaker::Config > fhicl::Table< pma::PMAlgVertexing::trkf::PMAlgTrackMaker::Config > fhicl::Table< pma::PMAlgVertexing::trkf::PMAlgTrajFitter::Config > fhicl::Table< pma::ProjectionMatchingAlg::trkf::PMAlgTrackMaker::Config > fhicl::Table< pma::ProjectionMatchingAlg::trkf::PMAlgTrajFitter::Config > fhicl::Table< PointIdAlgTools::IPointIdAlg::nnet::EmTrack::Config > fhicl::Table< T > fhicl::Table< T, fhicl::KeysToIgnore > fhicl::Table< trkf::Geometric3DVertexFitter::trkf::VertexFitter::Config > fhicl::Table< trkf::KalmanFilterFinalTrackFitter::trkf::KalmanFilterFinalTrackFitter::Inputs > fhicl::Table< trkf::KalmanFilterFinalTrackFitter::trkf::KalmanFilterFinalTrackFitter::Options > fhicl::Table< trkf::KalmanFilterTrajectoryFitter::trkf::KalmanFilterTrajectoryFitter::Inputs > fhicl::Table< trkf::KalmanFilterTrajectoryFitter::trkf::KalmanFilterTrajectoryFitter::Options > fhicl::Table< trkf::MCSFitProducer::trkf::MCSFitProducer::Inputs > fhicl::Table< trkf::TrackKalmanFitter::trkf::KalmanFilterFinalTrackFitter::Config > fhicl::Table< trkf::TrackKalmanFitter::trkf::KalmanFilterTrajectoryFitter::Config > fhicl::Table< trkf::TrackKalmanFitter::trkmkr::KalmanFilterFitTrackMaker::Config > fhicl::Table< trkf::TrackStatePropagator::trkf::KalmanFilterFinalTrackFitter::Config > fhicl::Table< trkf::TrackStatePropagator::trkf::KalmanFilterTrajectoryFitter::Config > fhicl::Table< trkf::TrackStatePropagator::trkf::VertexFitter::Config > fhicl::Table< trkf::TrackStatePropagator::trkmkr::KalmanFilterFitTrackMaker::Config > fhicl::Table< trkf::TrajectoryMCSFitter::trkf::MCSFitProducer::Config > fhicl::Table< trkf::TrajectoryMCSFitter::trkmkr::KalmanFilterFitTrackMaker::Config > fhicl::Table< trkf::VertexFitter::trkf::VertexFitter::Inputs > fhicl::Table< trkmkr::KalmanFilterFitTrackMaker::trkmkr::KalmanFilterFitTrackMaker::Options >

Public Member Functions

std::string const & key () const
 
std::string const & name () const
 
std::string const & comment () const
 
bool has_default () const
 
bool is_optional () const
 
bool is_conditional () const
 
par_type parameter_type () const
 
bool should_use () const
 
 ParameterBase (Name const &name, Comment const &comment, par_style const vt, par_type const type, std::function< bool()> maybeUse=AlwaysUse())
 
virtual ~ParameterBase ()=default
 
void set_value (fhicl::ParameterSet const &ps)
 
bool preset_value (fhicl::ParameterSet const &ps)
 
void set_par_style (par_style const vt)
 

Private Member Functions

virtual bool do_preset_value (fhicl::ParameterSet const &)
 
virtual void do_set_value (fhicl::ParameterSet const &)=0
 

Private Attributes

ParameterMetadata mdata_
 
std::function< bool()> maybeUse_
 

Detailed Description

Definition at line 35 of file ParameterBase.h.

Constructor & Destructor Documentation

fhicl::detail::ParameterBase::ParameterBase ( Name const &  name,
Comment const &  comment,
par_style const  vt,
par_type const  type,
std::function< bool()>  maybeUse = AlwaysUse() 
)
inline

Definition at line 78 of file ParameterBase.h.

83  : mdata_{name, comment, vt, type}, maybeUse_{maybeUse}
84  {}
std::string const & name() const
Definition: ParameterBase.h:43
std::function< bool()> maybeUse_
std::string const & comment() const
Definition: ParameterBase.h:48
virtual fhicl::detail::ParameterBase::~ParameterBase ( )
virtualdefault

Member Function Documentation

std::string const& fhicl::detail::ParameterBase::comment ( ) const
inline

Definition at line 48 of file ParameterBase.h.

49  {
50  return mdata_.comment();
51  }
std::string const & comment() const
virtual bool fhicl::detail::ParameterBase::do_preset_value ( fhicl::ParameterSet const &  )
inlineprivatevirtual
virtual void fhicl::detail::ParameterBase::do_set_value ( fhicl::ParameterSet const &  )
privatepure virtual

Implemented in fhicl::Sequence< T,-1ull >, fhicl::OptionalSequence< T,-1ull >, fhicl::Sequence< T, N >, fhicl::Sequence< double >, fhicl::Sequence< fhicl::Table< recob::test::HitDataProductChecker::Config::TargetInfo > >, fhicl::Sequence< std::string >, fhicl::Sequence< float >, fhicl::Sequence< double, 5 >, fhicl::Sequence< fhicl::TupleAs< SwitchPoint(std::string, fhicl::Sequence< std::uint32_t >)> >, fhicl::Sequence< int >, fhicl::Sequence< unsigned int >, fhicl::Sequence< art::InputTag >, fhicl::Sequence< double, 3 >, fhicl::Sequence< string >, fhicl::Sequence< fhicl::Table< lar::example::tests::ParticleMaker::ParticleConfig > >, fhicl::Sequence< size_t >, fhicl::Sequence< fhicl::Sequence< double > >, fhicl::Sequence< float, 3u >, fhicl::OptionalTuple< T >, fhicl::OptionalTuple< ARGS... >, fhicl::OptionalSequence< T, N >, fhicl::OptionalSequence< std::string >, fhicl::OptionalSequence< art::InputTag >, fhicl::OptionalSequence< fhicl::TupleAs< art::test::TypeAndTag(std::string, art::art::InputTag)> >, fhicl::OptionalSequence< fhicl::TupleAs< art::test::TypeAndInstance(std::string, std::string)> >, fhicl::Tuple< T >, fhicl::Table< T, KeysToIgnore >, fhicl::Table< art::ProducerTable::FullConfig< UserConfig, ImplicitConfig >, KeysToIgnore_t >, fhicl::Table< trkf::MCSFitProducer::trkf::MCSFitProducer::Inputs >, fhicl::Table< Config >, fhicl::Table< art::test::TopLevelTable::TestProperties >, fhicl::Table< nnet::nnet::PointIdAlg::nnet::ParticleDecayId::Config >, fhicl::Table< art::TimeTracker::Config::DBoutput >, fhicl::Table< trkf::TrajectoryMCSFitter::trkf::MCSFitProducer::Config >, fhicl::Table< calo::CalorimetryAlg::pdune::RecoStats::Config >, fhicl::Table< trkf::Geometric3DVertexFitter::trkf::VertexFitter::Config >, fhicl::Table< pma::PMAlgVertexing::trkf::PMAlgTrajFitter::Config >, fhicl::Table< fhicl::CondConfig::SphereParameters >, fhicl::Table< img::DataProviderAlg::pma::PMAlgTracker::Config >, fhicl::Table< PointIdAlgTools::IPointIdAlg::nnet::EmTrack::Config >, fhicl::Table< cheat::PhotonBackTracker::cheat::PhotonBackTrackerService::fhiclConfig >, fhicl::Table< pma::PMAlgVertexing::trkf::PMAlgTrackMaker::Config >, fhicl::Table< trkf::TrackStatePropagator::trkf::VertexFitter::Config >, fhicl::Table< pma::PMAlgCosmicTagger::trkf::PMAlgTrackMaker::Config >, fhicl::Table< trkf::TrackKalmanFitter::trkf::KalmanFilterTrajectoryFitter::Config >, fhicl::Table< evgen::evgen::ActiveVolumeVertexSampler::evgen::MarleyGen::Config >, fhicl::Table< pma::PMAlgStitching::trkf::PMAlgTrackMaker::Config >, fhicl::Table< nnet::nnet::TrainingDataAlg::nnet::SPMultiTpcDump::Config >, fhicl::Table< nnet::nnet::PointIdAlg::nnet::EmTrackMichelId::Config >, fhicl::Table< trkf::VertexFitter::trkf::VertexFitter::Inputs >, fhicl::Table< trkf::TrackStatePropagator::trkf::KalmanFilterTrajectoryFitter::Config >, fhicl::Table< T >, fhicl::Table< fhicl::CondConfig::BoxParameters >, fhicl::Table< trkf::KalmanFilterTrajectoryFitter::trkf::KalmanFilterTrajectoryFitter::Options >, fhicl::Table< pma::PMAlgFitter::trkf::PMAlgTrajFitter::Config >, fhicl::Table< trkf::TrackStatePropagator::trkf::KalmanFilterFinalTrackFitter::Config >, fhicl::Table< trkf::KalmanFilterFinalTrackFitter::trkf::KalmanFilterFinalTrackFitter::Inputs >, fhicl::Table< calo::CalorimetryAlg::nnet::PointIdEffTest::Config >, fhicl::Table< calo::CalorimetryAlg::pdunedp::Purity::Config >, fhicl::Table< nnet::nnet::TrainingDataAlg::nnet::PointIdTrainingData::Config >, fhicl::Table< trkf::TrajectoryMCSFitter::trkmkr::KalmanFilterFitTrackMaker::Config >, fhicl::Table< lar::example::SpacePointIsolationAlg::lar::example::RemoveIsolatedSpacePoints::Config >, fhicl::Table< art::detail::Analyzer::Table::FullConfig< UserConfig >, KeysToIgnore_t >, fhicl::Table< cheat::BackTracker::cheat::BackTrackerService::fhiclConfig >, fhicl::Table< T, fhicl::KeysToIgnore >, fhicl::Table< calo::CalorimetryAlg::img::DataProviderAlg::Config >, fhicl::Table< pma::ProjectionMatchingAlg::trkf::PMAlgTrackMaker::Config >, fhicl::Table< trkmkr::KalmanFilterFitTrackMaker::trkmkr::KalmanFilterFitTrackMaker::Options >, fhicl::Table< lar::example::lar::example::TotallyCheatTrackingAlg::lar::example::TotallyCheatTracker::Config >, fhicl::Table< trkf::TrackKalmanFitter::trkf::KalmanFilterFinalTrackFitter::Config >, fhicl::Table< art::ToolConfigTable::FullConfig< Config >, KeysToIgnore_t >, fhicl::Table< art::ToolConfigTable::FullConfig< UserConfig >, KeysToIgnore_t >, fhicl::Table< evgen::evgen::ActiveVolumeVertexSampler::evgen::MarleyTimeGen::Config >, fhicl::Table< trkf::TrackKalmanFitter::trkmkr::KalmanFilterFitTrackMaker::Config >, fhicl::Table< pma::ProjectionMatchingAlg::trkf::PMAlgTrajFitter::Config >, fhicl::Table< trkf::KalmanFilterTrajectoryFitter::trkf::KalmanFilterTrajectoryFitter::Inputs >, fhicl::Table< nnet::nnet::PointIdAlg::nnet::EmTrackClusterId::Config >, fhicl::Table< trkf::KalmanFilterFinalTrackFitter::trkf::KalmanFilterFinalTrackFitter::Options >, fhicl::Table< mf::service::ELdestination::MsgFormatSettings::mf::service::ELdestination::Config >, fhicl::Table< pma::PMAlgTracker::trkf::PMAlgTrackMaker::Config >, fhicl::Table< cheat::ParticleInventory::ParticleInventoryConfig >, fhicl::Table< calo::calo::CalorimetryAlg::calo::GnocchiCalorimetry::Config >, fhicl::Table< nnet::nnet::PointIdAlg::nnet::EmTrackClusterId2out::Config >, fhicl::Table< trkf::TrackStatePropagator::trkmkr::KalmanFilterFitTrackMaker::Config >, fhicl::OptionalTable< T >, fhicl::OptionalTable< Config >, fhicl::OptionalTable< art::Scheduler::Config::DebugConfig >, fhicl::OptionalTable< geo::GeometryInfoCheck::GeometryInfoConfig >, fhicl::OptionalTable< art::test::TopLevelTable::Source >, fhicl::OptionalAtom< T >, fhicl::OptionalAtom< double >, fhicl::OptionalAtom< std::string >, fhicl::OptionalAtom< EventNumber_t >, fhicl::OptionalAtom< int >, fhicl::OptionalAtom< art::InputTag >, fhicl::OptionalAtom< unsigned int >, fhicl::OptionalAtom< rndm::NuRandomService::seed_t >, fhicl::OptionalAtom< short >, fhicl::OptionalAtom< size_t >, fhicl::OptionalAtom< bool >, fhicl::OptionalAtom< SubRunNumber_t >, fhicl::OptionalAtom< RunNumber_t >, fhicl::Atom< T >, fhicl::Atom< Path_t::Depth_t >, fhicl::Atom< int64_t >, fhicl::Atom< uint32_t >, fhicl::Atom< double >, fhicl::Atom< geo::fhicl::Table::PlaneID_t >, fhicl::Atom< unsigned long long >, fhicl::Atom< std::string >, fhicl::Atom< float >, fhicl::Atom< raw::ADC_Count_t >, fhicl::Atom< int >, fhicl::Atom< geo::fhicl::Table::TPCID_t >, fhicl::Atom< art::InputTag >, fhicl::Atom< unsigned int >, fhicl::Atom< geo::fhicl::Table::CryostatID_t >, fhicl::Atom< geo::fhicl::Table::WireID_t >, fhicl::Atom< geo::fhicl::Table::OpDetID_t >, fhicl::Atom< seed_t >, fhicl::Atom< string >, fhicl::Atom< short >, fhicl::Atom< size_t >, fhicl::Atom< Pedestal_t >, fhicl::Atom< unsigned >, fhicl::Atom< art::ScheduleID::size_type >, fhicl::Atom< bool >, fhicl::Atom< readout::TPCsetID::TPCsetID_t >, fhicl::Atom< readout::readout::ROPID::ROPID_t >, fhicl::Atom< raw::ChannelID_t >, fhicl::OptionalDelegatedParameter, and fhicl::DelegatedParameter.

bool fhicl::detail::ParameterBase::has_default ( ) const
inline

Definition at line 53 of file ParameterBase.h.

54  {
55  return mdata_.has_default();
56  }
bool fhicl::detail::ParameterBase::is_conditional ( ) const
inline

Definition at line 63 of file ParameterBase.h.

64  {
65  return mdata_.is_conditional();
66  }
bool fhicl::detail::ParameterBase::is_optional ( ) const
inline

Definition at line 58 of file ParameterBase.h.

59  {
60  return mdata_.is_optional();
61  }
std::string const& fhicl::detail::ParameterBase::key ( ) const
inline

Definition at line 38 of file ParameterBase.h.

39  {
40  return mdata_.key();
41  }
std::string const & key() const
std::string const& fhicl::detail::ParameterBase::name ( ) const
inline

Definition at line 43 of file ParameterBase.h.

44  {
45  return mdata_.name();
46  }
std::string const & name() const
par_type fhicl::detail::ParameterBase::parameter_type ( ) const
inline

Definition at line 68 of file ParameterBase.h.

69  {
70  return mdata_.type();
71  }
bool fhicl::detail::ParameterBase::preset_value ( fhicl::ParameterSet const &  ps)
inline

Definition at line 95 of file ParameterBase.h.

96  {
97  return do_preset_value(ps);
98  }
static constexpr double ps
Definition: Units.h:99
virtual bool do_preset_value(fhicl::ParameterSet const &)
void fhicl::detail::ParameterBase::set_par_style ( par_style const  vt)
inline

Definition at line 100 of file ParameterBase.h.

101  {
102  mdata_.set_par_style(vt);
103  }
void set_par_style(par_style const vt)
void fhicl::detail::ParameterBase::set_value ( fhicl::ParameterSet const &  ps)
inline

Definition at line 90 of file ParameterBase.h.

91  {
93  }
virtual void do_set_value(fhicl::ParameterSet const &)=0
static constexpr double ps
Definition: Units.h:99
bool fhicl::detail::ParameterBase::should_use ( ) const
inline

Definition at line 73 of file ParameterBase.h.

74  {
75  return maybeUse_();
76  }
std::function< bool()> maybeUse_

Member Data Documentation

std::function<bool()> fhicl::detail::ParameterBase::maybeUse_
private

Definition at line 110 of file ParameterBase.h.

ParameterMetadata fhicl::detail::ParameterBase::mdata_
private

Definition at line 109 of file ParameterBase.h.


The documentation for this class was generated from the following file: