BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
Public Member Functions | Data Fields | Private Member Functions
GMAD::Modulator Class Reference

Modulator class for parser. More...

#include <modulator.h>

Inheritance diagram for GMAD::Modulator:
Inheritance graph
Collaboration diagram for GMAD::Modulator:
Collaboration graph

Public Member Functions

 Modulator ()
 Constructor.
 
void clear ()
 Reset.
 
void print () const
 Print some properties.
 
template<typename T >
void set_value (std::string property, T value)
 Set methods by property name and value.
 
- Public Member Functions inherited from GMAD::Published< Modulator >
bool NameExists (const std::string &name) const
 
Published< Modulator >::template AttributeMap< T > & attribute_map () const
 

Data Fields

std::string name
 
std::string type
 
double frequency
 frequency of modulation on top of rf cavity in Hz
 
double phase
 phase of modulation oscillator on top of rf cavity
 
double tOffset
 time offset used for phase calculation (ns) for modulator on top of rf cavity
 
double amplitudeOffset
 numerical value added to -1 -> 1 modulator as offset
 
double amplitudeScale
 multiplier for amplitude of modulation
 
double T0
 'on' time
 
double T1
 'off' time
 

Private Member Functions

void PublishMembers ()
 publish members
 

Additional Inherited Members

- Protected Types inherited from GMAD::Published< Modulator >
using AttributeMap = typename std::unordered_map< std::string, T C::* >
 Define AttributeMap of string and class member pointer.
 
- Protected Member Functions inherited from GMAD::Published< Modulator >
void publish (const std::string &name, T C::*mp)
 Make pointer to member from class C and type T with accessible with a name.
 
void set (Modulator *instance, const Modulator *instance2, const std::string &name)
 Set member with name of class instance to value of second instance.
 
AttributeMap< T > & attribute_map () const
 Access method to static map for type T and class C.
 
get (const Modulator *instance, const std::string &name) const
 Get method for class C.
 
void set (Modulator *instance, const std::string &name, double value)
 
void set (Modulator *instance, const std::string &name, GMAD::Array *const &value)
 
void set (Modulator *instance, const std::string &name, const T &value)
 

Detailed Description

Modulator class for parser.

Author
Laurie Nevay

Definition at line 36 of file modulator.h.

Constructor & Destructor Documentation

◆ Modulator()

Modulator::Modulator ( )

Constructor.

Definition at line 23 of file modulator.cc.

References clear(), and PublishMembers().

Here is the call graph for this function:

Member Function Documentation

◆ clear()

void Modulator::clear ( )

Reset.

Definition at line 29 of file modulator.cc.

References amplitudeOffset, amplitudeScale, frequency, phase, T0, T1, and tOffset.

Referenced by Modulator().

Here is the caller graph for this function:

◆ print()

void Modulator::print ( ) const

Print some properties.

Definition at line 55 of file modulator.cc.

References amplitudeOffset, amplitudeScale, frequency, phase, T0, T1, and tOffset.

◆ PublishMembers()

void Modulator::PublishMembers ( )
private

publish members

Definition at line 42 of file modulator.cc.

References amplitudeOffset, amplitudeScale, frequency, phase, GMAD::Published< Modulator >::publish(), T0, T1, and tOffset.

Referenced by Modulator().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_value()

template<typename T >
void GMAD::Modulator::set_value ( std::string  property,
value 
)

Set methods by property name and value.

Definition at line 66 of file modulator.h.

References GMAD::Published< Modulator >::set().

Here is the call graph for this function:

Field Documentation

◆ amplitudeOffset

double GMAD::Modulator::amplitudeOffset

numerical value added to -1 -> 1 modulator as offset

Definition at line 44 of file modulator.h.

Referenced by clear(), print(), and PublishMembers().

◆ amplitudeScale

double GMAD::Modulator::amplitudeScale

multiplier for amplitude of modulation

Definition at line 45 of file modulator.h.

Referenced by clear(), print(), and PublishMembers().

◆ frequency

double GMAD::Modulator::frequency

frequency of modulation on top of rf cavity in Hz

Definition at line 41 of file modulator.h.

Referenced by clear(), print(), and PublishMembers().

◆ name

std::string GMAD::Modulator::name

Definition at line 39 of file modulator.h.

◆ phase

double GMAD::Modulator::phase

phase of modulation oscillator on top of rf cavity

Definition at line 42 of file modulator.h.

Referenced by clear(), print(), and PublishMembers().

◆ T0

double GMAD::Modulator::T0

'on' time

Definition at line 47 of file modulator.h.

Referenced by clear(), print(), and PublishMembers().

◆ T1

double GMAD::Modulator::T1

'off' time

Definition at line 48 of file modulator.h.

Referenced by clear(), print(), and PublishMembers().

◆ tOffset

double GMAD::Modulator::tOffset

time offset used for phase calculation (ns) for modulator on top of rf cavity

Definition at line 43 of file modulator.h.

Referenced by clear(), print(), and PublishMembers().

◆ type

std::string GMAD::Modulator::type

Definition at line 40 of file modulator.h.


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