CTL
0.6.1
Computed Tomography Library
|
Base class for components that modify the X-ray beam. More...
#include <genericbeammodifier.h>
Public Types | |
enum | { Type = 401 } |
![]() | |
enum | { Type = 400 } |
![]() | |
enum | { Type = 0 } |
![]() | |
enum | { Type = -1, UserType = 65536 } |
Public Member Functions | |
int | type () const override |
IntervalDataSeries | modifiedSpectrum (const IntervalDataSeries &inputSpectrum) override |
double | modifiedFlux (double inputFlux, const IntervalDataSeries &inputSpectrum) override |
GenericBeamModifier (const QString &name=defaultName()) | |
SystemComponent * | clone () const override |
QString | info () const override |
void | fromVariant (const QVariant &variant) override |
QVariant | toVariant () const override |
![]() | |
int | type () const override |
SystemComponent (const QString &name=defaultName()) | |
virtual int | elementalType () const |
void | fromVariant (const QVariant &variant) override |
QVariant | toVariant () const override |
const QString & | name () const |
void | rename (QString name) |
![]() | |
virtual | ~SerializationInterface ()=default |
Static Public Member Functions | |
static QString | defaultName () |
![]() | |
static QString | defaultName () |
Friends | |
template<class > | |
struct | SerializationHelper::RegisterWithSerializationHelper |
Related Functions | |
(Note that these are not member functions.) | |
std::unique_ptr< GenericBeamModifier > | makeModifier (ConstructorArguments &&... arguments) |
![]() | |
std::unique_ptr< ComponentType > | makeComponent (ConstructorArguments &&... arguments) |
std::unique_ptr< SystemComponent > | makeComponentFromJson (const QJsonObject &object, bool fallbackToGenericType) |
Additional Inherited Members | |
![]() | |
AbstractBeamModifier (const QString &name) | |
AbstractBeamModifier (const AbstractBeamModifier &)=default | |
AbstractBeamModifier (AbstractBeamModifier &&)=default | |
AbstractBeamModifier & | operator= (const AbstractBeamModifier &)=default |
AbstractBeamModifier & | operator= (AbstractBeamModifier &&)=default |
![]() | |
SerializationInterface ()=default | |
SerializationInterface (const SerializationInterface &)=default | |
SerializationInterface (SerializationInterface &&)=default | |
SerializationInterface & | operator= (const SerializationInterface &)=default |
SerializationInterface & | operator= (SerializationInterface &&)=default |
![]() | |
static QString | typeInfoString (const std::type_info &type) |
Base class for components that modify the X-ray beam.
This is a placeholder class for a generic implementation of AbstractBeamModifier. Currently, this does not modify the incident spectrum at all.
CTL::GenericBeamModifier::GenericBeamModifier | ( | const QString & | name = defaultName() | ) |
Constructs a GenericBeamModifier object named name.
|
overridevirtual |
Creates a copy of this instance and returns a base-class pointer to the cloned object.
Reimplemented from CTL::SystemComponent.
|
static |
Returns the default name for the component: "Generic beam modifier".
|
overridevirtual |
Interface to read all member variables from the QVariant variant.
Reimplement this method such that it reads all newly introduced content when sub-classing. A typical reimplementation in sub-classes might look like this:
Reimplemented from CTL::AbstractBeamModifier.
|
overridevirtual |
Returns a formatted string that contains information about the component.
Reimplemented from CTL::AbstractBeamModifier.
|
overridevirtual |
Interface to store all member variables in a QVariant.
Stores the object's type-id.
Reimplement this method such that it stores all newly introduced object data when sub-classing. This needs to cover everything that is necessary to fully determine the state of an object. Best practice is to invoke the base class version of this method to take care of all content originating from underlying base classes.
A typical reimplementation in sub-classes might look like this:
Reimplemented from CTL::AbstractBeamModifier.
|
inlineoverridevirtual |
Returns the type-id of the serializable object. Used in deserialization to determine the proper object type.
Add derived classes to the enumeration using the CTL_TYPE_ID macro.
Reimplemented from CTL::AbstractBeamModifier.
|
related |
Factory method to construct a GenericBeamModifier and wrap the object in a std::unique_ptr<GenericBeamModifier>.
This is similar to the more general method GenericComponent::makeComponent() with the difference that it returns a unique pointer to the GenericBeamModifier base type instead of GenericComponent.