SpECTRE
v2025.03.17
|
The base class used for automatic registration of entry methods. More...
#include <CharmRegistration.hpp>
Public Member Functions | |
RegistrationHelper (const RegistrationHelper &)=default | |
RegistrationHelper & | operator= (const RegistrationHelper &)=default |
RegistrationHelper (RegistrationHelper &&)=default | |
RegistrationHelper & | operator= (RegistrationHelper &&)=default |
virtual void | register_with_charm () const =0 |
virtual std::string | name () const =0 |
virtual bool | is_registering_chare () const |
The base class used for automatic registration of entry methods.
Entry methods are automatically registered by building a list of the entry methods that need to be registered in the charm_register_list
. All entry methods in the list are later registered in the register_parallel_components
function, at which point the list is also deleted.
The reason for using an abstract base class mechanism is that we need to be able to register entry method templates. The derived classes keep track of the template parameters and override the register_with_charm
function. The result is that there must be one derived class template for each entry method template, but since we only have a few entry method templates this is not an issue.