CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Static Public Member Functions
enroller_helper::EnrollerHelper< T, TVector > Struct Template Reference

#include <SimActivityRegistryEnroller.h>

Public Types

typedef boost::mpl::pop_back
< TVector >::type 
RemainingVector
 

Static Public Member Functions

static void enroll (SimActivityRegistry &iReg, T *iT)
 

Detailed Description

template<class T, class TVector>
struct enroller_helper::EnrollerHelper< T, TVector >

Definition at line 54 of file SimActivityRegistryEnroller.h.

Member Typedef Documentation

template<class T , class TVector >
typedef boost::mpl::pop_back<TVector>::type enroller_helper::EnrollerHelper< T, TVector >::RemainingVector

Definition at line 55 of file SimActivityRegistryEnroller.h.

Member Function Documentation

template<class T , class TVector >
static void enroller_helper::EnrollerHelper< T, TVector >::enroll ( SimActivityRegistry iReg,
T iT 
)
inlinestatic

Definition at line 56 of file SimActivityRegistryEnroller.h.

Referenced by SimActivityRegistryEnroller::enroll().

56  {
57  //Try to enroll the object if it inherits from the class at the
58  // end of TVector
60 
61  //If TVector is not at its end, call EnrollerHelper with a vector
62  // that had our last type 'popped off' the end
63  typedef typename boost::mpl::eval_if<boost::mpl::empty<TVector>,
64  boost::mpl::identity<LastEnrollerHelper<T> >,
66  >::type NextEnroller;
67  NextEnroller::enroll(iReg,iT);
68  }
type
Definition: HCALResponse.h:22
static void enroll(SimActivityRegistry &iReg, T *iT)