thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
ThePEG::DescriptionList Class Reference

The DescriptionList keeps a static list of descriptions of classes included in the current run. More...

#include <DescriptionList.h>

Public Types

typedef map< const type_info *, ClassDescriptionBase * > DescriptionMap
 Map of class descriptions indexed by type_info objects.
 
typedef map< string, ClassDescriptionBase * > StringMap
 Map of class descriptions indexed by platform-independent class names.
 

Static Public Member Functions

static void Register (ClassDescriptionBase &)
 Insert a description in the list.
 
static const ClassDescriptionBasefind (const type_info &ti)
 Get the description of a class giving its type_info object.
 
static string className (const type_info &ti)
 Return the name of the class corresponding to the given type_info object.
 
static int version (const type_info &ti)
 Return the version of the class corresponding to the given type_info object.
 
static string library (const type_info &ti)
 Return the dynamic library of the class corresponding to the given type_info object.
 
static const ClassDescriptionBasefind (const string &name)
 Get the description of a class giving its name.
 
static const DescriptionMapall ()
 Return the static set of descriptions mapped to the relevant type_info objects.
 
static void printHierarchies (ostream &os)
 Print the classes in the list and their base classes to a stream.
 

Static Protected Member Functions

static void hookup ()
 Hookup the base class descriptions in the list.
 
static void insert (ClassDescriptionBase &pb)
 Insert a class description.
 
static DescriptionMapdescriptionMap ()
 Return the static set of descriptions mapped to the relevant type_info objects.
 
static StringMapstringMap ()
 Return the static set of descriptions mapped to the corresponding class names.
 

Detailed Description

The DescriptionList keeps a static list of descriptions of classes included in the current run.

Definition at line 22 of file DescriptionList.h.

Member Typedef Documentation

◆ DescriptionMap

Map of class descriptions indexed by type_info objects.

Definition at line 28 of file DescriptionList.h.

◆ StringMap

Map of class descriptions indexed by platform-independent class names.

Definition at line 36 of file DescriptionList.h.

Member Function Documentation

◆ all()

static const DescriptionMap & ThePEG::DescriptionList::all ( )
inlinestatic

Return the static set of descriptions mapped to the relevant type_info objects.

Definition at line 87 of file DescriptionList.h.

References descriptionMap().

◆ descriptionMap()

static DescriptionMap & ThePEG::DescriptionList::descriptionMap ( )
staticprotected

Return the static set of descriptions mapped to the relevant type_info objects.

This function has a static DescriptionMap variable which is initialized the first time it is called.

Referenced by all(), and find().

◆ find() [1/2]

static const ClassDescriptionBase * ThePEG::DescriptionList::find ( const string &  name)
inlinestatic

Get the description of a class giving its name.

Definition at line 77 of file DescriptionList.h.

References stringMap().

◆ find() [2/2]

static const ClassDescriptionBase * ThePEG::DescriptionList::find ( const type_info &  ti)
inlinestatic

◆ printHierarchies()

static void ThePEG::DescriptionList::printHierarchies ( ostream &  os)
static

Print the classes in the list and their base classes to a stream.

Mainly intended for debugging purposes.

◆ stringMap()

static StringMap & ThePEG::DescriptionList::stringMap ( )
staticprotected

Return the static set of descriptions mapped to the corresponding class names.

This function has a static StringMap variable which is initialized the first time it is called.

Referenced by find().


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