Class Module

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class Module : public Referenced

Abstract base class for modules.

Subclassed by AbstractAccelerationModule, AbstractCondition, AdiabaticCooling, DiffusionSDE, EMCascade, EMDoublePairProduction, EMInverseComptonScattering, EMPairProduction, EMTripletPairProduction, ElasticScattering, ElectronPairProduction, EmissionMapFiller, FutureRedshift, ModuleList, ModuleListRunner, NuclearDecay, Observer, Output, ParticleCollector, PerformanceModule, PeriodicBox, PhotoDisintegration, PhotoPionProduction, PhotonEleCa, PhotonOutput1D, PropagationBP, PropagationCK, Redshift, ReflectiveBox, RestrictToRegion, ShellOutput, ShellOutput1D, ShellPropertyOutput, SimplePropagation, SynchrotronRadiation

Public Functions

Module()
inline virtual ~Module()
virtual std::string getDescription() const
void setDescription(const std::string &description)
virtual void process(Candidate *candidate) const = 0
inline void process(ref_ptr<Candidate> candidate) const
inline size_t addReference() const
inline size_t removeReference() const
inline int removeReferenceNoDelete() const
inline size_t getReferenceCount() const

Protected Attributes

mutable size_t _referenceCount