CTL  0.6.1
Computed Tomography Library
genericbeammodifier.h
Go to the documentation of this file.
1 #ifndef CTL_GENERICBEAMMODIFIER_H
2 #define CTL_GENERICBEAMMODIFIER_H
3 
4 #include "abstractbeammodifier.h"
5 
6 /*
7  * NOTE: This is header only.
8  */
9 
10 namespace CTL {
20 {
22 
23  // implementation of abstract interface
24  public: IntervalDataSeries modifiedSpectrum(const IntervalDataSeries& inputSpectrum) override;
25  public: double modifiedFlux(double inputFlux,
26  const IntervalDataSeries& inputSpectrum) override;
27 
28 public:
29  GenericBeamModifier(const QString& name = defaultName());
30 
31  // virtual methods
32  SystemComponent* clone() const override;
33  QString info() const override;
34  void fromVariant(const QVariant& variant) override; // de-serialization
35  QVariant toVariant() const override; // serialization
36 
37  // static methods
38  static QString defaultName();
39 };
40 
41 } // namespace CTL
42 
44 
58 
60 #endif // CTL_GENERICBEAMMODIFIER_H
Base class for components that modify the X-ray beam.
Definition: abstractbeammodifier.h:45
void fromVariant(const QVariant &variant) override
Definition: genericbeammodifier.cpp:54
static QString defaultName()
Definition: genericbeammodifier.cpp:46
Base class for components that modify the X-ray beam.
Definition: genericbeammodifier.h:19
const QString & name() const
Definition: systemcomponent.cpp:42
The IntervalDataSeries class is a container for a series of values sampled in equidistant steps (i....
Definition: intervaldataseries.h:65
SystemComponent * clone() const override
Definition: genericbeammodifier.cpp:28
Base class for all system components.
Definition: systemcomponent.h:53
QString info() const override
Definition: genericbeammodifier.cpp:33
#define CTL_TYPE_ID(newIndex)
Definition: serializationinterface.h:189
QVariant toVariant() const override
Definition: genericbeammodifier.cpp:60