Class Module

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class Module : public Referenced

Abstract base class for modules.

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

Public Functions

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

Protected Attributes

size_t _referenceCount