#include <SimActivityRegistryEnroller.h>
Public Types | |
typedef boost::mpl::pop_back < TVector >::type | RemainingVector |
Static Public Member Functions | |
static void | enroll (SimActivityRegistry &iReg, T *iT) |
Definition at line 54 of file SimActivityRegistryEnroller.h.
typedef boost::mpl::pop_back<TVector>::type enroller_helper::EnrollerHelper< T, TVector >::RemainingVector |
Definition at line 55 of file SimActivityRegistryEnroller.h.
static void enroller_helper::EnrollerHelper< T, TVector >::enroll | ( | SimActivityRegistry & | iReg, |
T * | iT | ||
) | [inline, static] |
Definition at line 56 of file SimActivityRegistryEnroller.h.
{ //Try to enroll the object if it inherits from the class at the // end of TVector Enrollment< typename boost::mpl::deref< typename boost::mpl::prior< typename boost::mpl::end< TVector >::type >::type >::type >::enroll(iReg, iT ); //If TVector is not at its end, call EnrollerHelper with a vector // that had our last type 'popped off' the end typedef typename boost::mpl::eval_if<boost::mpl::empty<TVector>, boost::mpl::identity<LastEnrollerHelper<T> >, boost::mpl::identity<EnrollerHelper<T, typename boost::mpl::pop_back< TVector >::type > > >::type NextEnroller; NextEnroller::enroll(iReg,iT); }