Classes | Namespaces | Macros | Functions
LandmarkRegister.h File Reference
#include <string>
#include <cstring>
#include <vector>
#include <map>
#include "LandmarkSelectionBase.h"

Classes

class  PLMD::analysis::LandmarkRegister
 

Namespaces

 PLMD
 
 PLMD::analysis
 

Macros

#define PLUMED_REGISTER_LANDMARKS(classname, type)
 

Functions

LandmarkRegister & PLMD::analysis::landmarkRegister ()
 

Macro Definition Documentation

#define PLUMED_REGISTER_LANDMARKS (   classname,
  type 
)
Value:
static class classname##RegisterMe{ \
static LandmarkSelectionBase * create(const LandmarkSelectionOptions&lo){return new classname(lo);} \
public: \
classname##RegisterMe(){landmarkRegister().add(type,create);}; \
~classname##RegisterMe(){landmarkRegister().remove(create);}; \
} classname##RegisterMeObject;
LandmarkRegister & landmarkRegister()
Definition: LandmarkRegister.cpp:36
static class PLMD::PlumedMainInitializer RegisterMe
void remove(creator_pointer f)
Remove a landmark selection style from the register of metrics.
Definition: LandmarkRegister.cpp:41
void add(std::string type, creator_pointer)
Add a new landmark selection style to the register of landmark selectors.
Definition: LandmarkRegister.cpp:49