CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions
DDStrVector Class Reference

a named constant corresponding to the DDL-XML tag <Constant> and <ConstantsStrVector> More...

#include <DDStrVector.h>

Inheritance diagram for DDStrVector:
DDBase< DDName, std::unique_ptr< std::vector< std::string > > >

Public Types

using size_t = std::vector< std::string >::size_type
 size type for the size of the stored values More...
 
using value_type = std::vector< std::string >
 value type of the managed object More...
 
- Public Types inherited from DDBase< DDName, std::unique_ptr< std::vector< std::string > > >
using def_type = std::pair< const DDName *, bool >
 
using StoreT = DDI::Singleton< DDI::Store< DDName, std::unique_ptr< std::vector< std::string > > > >
 

Public Member Functions

 DDStrVector ()
 an uninitialized constant; one can assign an initialized constant to make it valid More...
 
 DDStrVector (const DDName &name)
 a refenrence to a constant More...
 
 DDStrVector (const DDName &name, std::unique_ptr< std::vector< std::string >> value)
 creation of a new named constant; if it already existed with the given name, it's overwritten with new values More...
 
 operator std::string () const
 convert to a double More...
 
 operator std::vector< std::string > () const
 convert to a std::vector<double> More...
 
std::string operator[] (size_t pos) const
 returns the value on position pos; does not check boundaries! More...
 
size_t size () const
 the size of the array of values More...
 
std::string value () const
 return the first stored value; does not check boundaries! More...
 
const value_typevalues () const
 the stored values More...
 
value_type::const_iterator vectorBegin () const
 read-only iterator pointing to the begin of the stored values More...
 
value_type::const_iterator vectorEnd () const
 read-only iterator poining one place after the stored values More...
 
- Public Member Functions inherited from DDBase< DDName, std::unique_ptr< std::vector< std::string > > >
void create (const DDName &name, std::unique_ptr< std::vector< std::string > > vals)
 
void create (const DDName &name)
 
 DDBase ()
 
const DDNameddname () const
 
def_type isDefined () const
 
bool isValid () const
 true, if the wrapped pointer is valid More...
 
const DDNamename () const
 
 operator bool () const
 
bool operator< (const DDBase &b) const
 
bool operator== (const DDBase &b) const
 
bool operator> (const DDBase &b) const
 
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep () const
 
DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep ()
 
std::string toString () const
 
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference val () const
 
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference val ()
 
virtual ~DDBase ()
 

Additional Inherited Members

- Static Public Member Functions inherited from DDBase< DDName, std::unique_ptr< std::vector< std::string > > >
static auto begin ()
 
static auto end ()
 

Detailed Description

a named constant corresponding to the DDL-XML tag <Constant> and <ConstantsStrVector>

Definition at line 18 of file DDStrVector.h.

Member Typedef Documentation

◆ size_t

using DDStrVector::size_t = std::vector<std::string>::size_type

size type for the size of the stored values

Definition at line 21 of file DDStrVector.h.

◆ value_type

using DDStrVector::value_type = std::vector<std::string>

value type of the managed object

Definition at line 24 of file DDStrVector.h.

Constructor & Destructor Documentation

◆ DDStrVector() [1/3]

DDStrVector::DDStrVector ( )

an uninitialized constant; one can assign an initialized constant to make it valid

Definition at line 5 of file DDStrVector.cc.

◆ DDStrVector() [2/3]

DDStrVector::DDStrVector ( const DDName name)

◆ DDStrVector() [3/3]

DDStrVector::DDStrVector ( const DDName name,
std::unique_ptr< std::vector< std::string >>  value 
)

creation of a new named constant; if it already existed with the given name, it's overwritten with new values

Definition at line 11 of file DDStrVector.cc.

References DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::create(), eostools::move(), and DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::name().

11  {
12  create(name, std::move(vals));
13 }
def move(src, dest)
Definition: eostools.py:511
void create(const DDName &name, std::unique_ptr< std::vector< std::string > > vals)
Definition: DDBase.h:95

Member Function Documentation

◆ operator std::string()

DDStrVector::operator std::string ( ) const
inline

convert to a double

Definition at line 54 of file DDStrVector.h.

References DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::rep().

54 { return rep()[0]; }
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep() const
Definition: DDBase.h:64

◆ operator std::vector< std::string >()

DDStrVector::operator std::vector< std::string > ( ) const
inline

convert to a std::vector<double>

Definition at line 57 of file DDStrVector.h.

References DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::rep().

57 { return rep(); }
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep() const
Definition: DDBase.h:64

◆ operator[]()

std::string DDStrVector::operator[] ( size_t  pos) const
inline

returns the value on position pos; does not check boundaries!

Definition at line 42 of file DDStrVector.h.

References DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::rep().

42 { return rep()[pos]; }
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep() const
Definition: DDBase.h:64

◆ size()

size_t DDStrVector::size ( void  ) const
inline

the size of the array of values

Definition at line 36 of file DDStrVector.h.

References DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::rep().

Referenced by ntupleDataFormat._Collection::__iter__(), ntupleDataFormat._Collection::__len__(), and operator<<().

36 { return rep().size(); }
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep() const
Definition: DDBase.h:64

◆ value()

std::string DDStrVector::value ( ) const
inline

◆ values()

const value_type& DDStrVector::values ( ) const
inline

the stored values

Definition at line 39 of file DDStrVector.h.

References DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::rep().

Referenced by operator<<().

39 { return rep(); }
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep() const
Definition: DDBase.h:64

◆ vectorBegin()

value_type::const_iterator DDStrVector::vectorBegin ( ) const
inline

read-only iterator pointing to the begin of the stored values

Definition at line 48 of file DDStrVector.h.

References DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::rep().

48 { return rep().begin(); }
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep() const
Definition: DDBase.h:64

◆ vectorEnd()

value_type::const_iterator DDStrVector::vectorEnd ( ) const
inline

read-only iterator poining one place after the stored values

Definition at line 51 of file DDStrVector.h.

References DDBase< DDName, std::unique_ptr< std::vector< std::string > > >::rep().

51 { return rep().end(); }
const DDI::rep_traits< DDName, std::unique_ptr< std::vector< std::string > > >::reference rep() const
Definition: DDBase.h:64