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

#include <SequenceBase.h>

Inheritance diagram for fhicl::detail::SequenceBase:
fhicl::detail::ParameterBase 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 >

Public Member Functions

 SequenceBase (Name &&name, Comment &&comment, par_style const vt, par_type const type, std::function< bool()> maybeUse)
 
bool empty () const noexcept
 
std::size_t size () const noexcept
 
void prepare_elements_for_validation (std::size_t const n)
 
void walk_elements (ParameterWalker< tt::const_flavor::require_non_const > &pw)
 
void walk_elements (ParameterWalker< tt::const_flavor::require_const > &pw) const
 
- Public Member Functions inherited from fhicl::detail::ParameterBase
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 std::size_t get_size () const noexcept=0
 
virtual void do_prepare_elements_for_validation (std::size_t)=0
 
virtual void do_walk_elements (ParameterWalker< tt::const_flavor::require_non_const > &)=0
 
virtual void do_walk_elements (ParameterWalker< tt::const_flavor::require_const > &) const =0
 

Detailed Description

Definition at line 17 of file SequenceBase.h.

Constructor & Destructor Documentation

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

Definition at line 19 of file SequenceBase.h.

24  : ParameterBase{name, comment, vt, type, maybeUse}
25  {}
std::string const & name() const
Definition: ParameterBase.h:43
ParameterBase(Name const &name, Comment const &comment, par_style const vt, par_type const type, std::function< bool()> maybeUse=AlwaysUse())
Definition: ParameterBase.h:78
static QCString type
Definition: declinfo.cpp:672
std::string const & comment() const
Definition: ParameterBase.h:48

Member Function Documentation

virtual void fhicl::detail::SequenceBase::do_prepare_elements_for_validation ( std::size_t  )
privatepure virtual
virtual void fhicl::detail::SequenceBase::do_walk_elements ( ParameterWalker< tt::const_flavor::require_non_const > &  )
privatepure virtual
virtual void fhicl::detail::SequenceBase::do_walk_elements ( ParameterWalker< tt::const_flavor::require_const > &  ) const
privatepure virtual
bool fhicl::detail::SequenceBase::empty ( ) const
inlinenoexcept

Definition at line 28 of file SequenceBase.h.

29  {
30  return size() == 0;
31  }
std::size_t size() const noexcept
Definition: SequenceBase.h:33
virtual std::size_t fhicl::detail::SequenceBase::get_size ( ) const
privatepure virtualnoexcept
void fhicl::detail::SequenceBase::prepare_elements_for_validation ( std::size_t const  n)
inline

Definition at line 39 of file SequenceBase.h.

40  {
42  }
virtual void do_prepare_elements_for_validation(std::size_t)=0
std::void_t< T > n
std::size_t fhicl::detail::SequenceBase::size ( ) const
inlinenoexcept

Definition at line 33 of file SequenceBase.h.

34  {
35  return get_size();
36  }
virtual std::size_t get_size() const noexcept=0
void fhicl::detail::SequenceBase::walk_elements ( ParameterWalker< tt::const_flavor::require_non_const > &  pw)
inline

Definition at line 44 of file SequenceBase.h.

45  {
46  do_walk_elements(pw);
47  }
virtual void do_walk_elements(ParameterWalker< tt::const_flavor::require_non_const > &)=0
void fhicl::detail::SequenceBase::walk_elements ( ParameterWalker< tt::const_flavor::require_const > &  pw) const
inline

Definition at line 49 of file SequenceBase.h.

50  {
51  do_walk_elements(pw);
52  }
virtual void do_walk_elements(ParameterWalker< tt::const_flavor::require_non_const > &)=0

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