CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends
edm::ParameterDescriptionCases< T > Class Template Reference

#include <ParameterDescriptionCases.h>

Public Types

typedef std::map< T,
edm::value_ptr
< ParameterDescriptionNode > > 
CaseMap
 

Public Member Functions

std::auto_ptr< CaseMapcaseMap ()
 
bool duplicateCaseValues () const
 
void insert (T caseValue, std::auto_ptr< ParameterDescriptionNode > node)
 

Private Member Functions

 ParameterDescriptionCases (T const &caseValue, std::auto_ptr< ParameterDescriptionNode > node)
 

Private Attributes

std::auto_ptr< CaseMapcaseMap_
 
bool duplicateCaseValues_
 

Friends

std::auto_ptr
< ParameterDescriptionCases
< bool > > 
operator>> (bool caseValue, std::auto_ptr< ParameterDescriptionNode > node)
 
std::auto_ptr
< ParameterDescriptionCases
< int > > 
operator>> (int caseValue, std::auto_ptr< ParameterDescriptionNode > node)
 
std::auto_ptr
< ParameterDescriptionCases
< std::string > > 
operator>> (std::string const &caseValue, std::auto_ptr< ParameterDescriptionNode > node)
 
std::auto_ptr
< ParameterDescriptionCases
< std::string > > 
operator>> (char const *caseValue, std::auto_ptr< ParameterDescriptionNode > node)
 

Detailed Description

template<typename T>
class edm::ParameterDescriptionCases< T >

Definition at line 38 of file ParameterDescriptionCases.h.

Member Typedef Documentation

template<typename T >
typedef std::map<T, edm::value_ptr<ParameterDescriptionNode> > edm::ParameterDescriptionCases< T >::CaseMap

Definition at line 40 of file ParameterDescriptionCases.h.

Constructor & Destructor Documentation

template<typename T >
edm::ParameterDescriptionCases< T >::ParameterDescriptionCases ( T const &  caseValue,
std::auto_ptr< ParameterDescriptionNode node 
)
inlineprivate

Definition at line 77 of file ParameterDescriptionCases.h.

References edm::ParameterDescriptionCases< T >::caseMap_.

77  :
78  caseMap_(new CaseMap),
80  {
81  std::pair<T, edm::value_ptr<ParameterDescriptionNode> > casePair(caseValue,edm::value_ptr<ParameterDescriptionNode>());
82  caseMap_->insert(casePair);
83  (*caseMap_)[caseValue] = node;
84  }
std::map< T, edm::value_ptr< ParameterDescriptionNode > > CaseMap

Member Function Documentation

template<typename T >
std::auto_ptr<CaseMap> edm::ParameterDescriptionCases< T >::caseMap ( )
inline

Definition at line 50 of file ParameterDescriptionCases.h.

References edm::ParameterDescriptionCases< T >::caseMap_.

50 { return caseMap_; }
template<typename T >
bool edm::ParameterDescriptionCases< T >::duplicateCaseValues ( ) const
inline
template<typename T >
void edm::ParameterDescriptionCases< T >::insert ( T  caseValue,
std::auto_ptr< ParameterDescriptionNode node 
)
inline

Definition at line 42 of file ParameterDescriptionCases.h.

References edm::ParameterDescriptionCases< T >::caseMap_, edm::ParameterDescriptionCases< T >::duplicateCaseValues_, and mps_update::status.

Referenced by BeautifulSoup.PageElement::_invert().

42  {
43  std::pair<T, edm::value_ptr<ParameterDescriptionNode> > casePair(caseValue,edm::value_ptr<ParameterDescriptionNode>());
44  std::pair<typename CaseMap::iterator,bool> status;
45  status = caseMap_->insert(casePair);
46  (*caseMap_)[caseValue] = node;
47  if (status.second == false) duplicateCaseValues_ = true;
48  }
tuple status
Definition: mps_update.py:57

Friends And Related Function Documentation

template<typename T >
std::auto_ptr<ParameterDescriptionCases<bool> > operator>> ( bool  caseValue,
std::auto_ptr< ParameterDescriptionNode node 
)
friend
template<typename T >
std::auto_ptr<ParameterDescriptionCases<int> > operator>> ( int  caseValue,
std::auto_ptr< ParameterDescriptionNode node 
)
friend
template<typename T >
std::auto_ptr<ParameterDescriptionCases<std::string> > operator>> ( std::string const &  caseValue,
std::auto_ptr< ParameterDescriptionNode node 
)
friend
template<typename T >
std::auto_ptr<ParameterDescriptionCases<std::string> > operator>> ( char const *  caseValue,
std::auto_ptr< ParameterDescriptionNode node 
)
friend

Member Data Documentation

template<typename T >
std::auto_ptr<CaseMap> edm::ParameterDescriptionCases< T >::caseMap_
private
template<typename T >
bool edm::ParameterDescriptionCases< T >::duplicateCaseValues_
private