CTL  0.6.1
Computed Tomography Library
Public Member Functions | Protected Member Functions | List of all members
CTL::AbstractPreparationProtocol Class Referenceabstract

Base class for entire preparation protocols (i.e. for multiple views) that can be used in combination with an AcquisitionSetup. More...

#include <abstractpreparestep.h>

Inheritance diagram for CTL::AbstractPreparationProtocol:
Inheritance graph
[legend]

Public Member Functions

virtual std::vector< std::shared_ptr< AbstractPrepareStep > > prepareSteps (uint viewNb, const AcquisitionSetup &setup) const =0
 
virtual bool isApplicableTo (const AcquisitionSetup &setup) const
 
virtual ~AbstractPreparationProtocol ()=default
 

Protected Member Functions

 AbstractPreparationProtocol (const AbstractPreparationProtocol &)=default
 
 AbstractPreparationProtocol (AbstractPreparationProtocol &&)=default
 
AbstractPreparationProtocoloperator= (const AbstractPreparationProtocol &)=default
 
AbstractPreparationProtocoloperator= (AbstractPreparationProtocol &&)=default
 

Detailed Description

Base class for entire preparation protocols (i.e. for multiple views) that can be used in combination with an AcquisitionSetup.

A preparation protocol holds the information about all necessary preparation steps for each view in an entire acquisition. Its abstract interface prepareSteps() can be interpreted as a factory method that constructs all prepare steps required for the preparation of a certain view in the desired protocol.

For convenience, AbstractPreparationProtocol can also provide a method to confirm its applicability to a given AcquisitionSetup - just as AbstractPrepareStep does for a given CTSystem. This should be reimplemented in sub-classes to cover all dependencies of the particular protocol.

Constructor & Destructor Documentation

◆ ~AbstractPreparationProtocol()

CTL::AbstractPreparationProtocol::~AbstractPreparationProtocol ( )
virtualdefault

Default (virtual) destructor.

Member Function Documentation

◆ isApplicableTo()

CTL::AbstractPreparationProtocol::isApplicableTo ( const AcquisitionSetup setup) const
inlinevirtual

Returns true if this protocol can be used with setup.

Typically, this method will check whether the system used in setup contains all components that shall be prepared by this instance and whether the available information in this instance is compatible with the number of views specified in setup.

Reimplemented in CTL::protocols::TomosynthesisLinearTrajectory, CTL::protocols::TomosynthesisCrossTrajectory, CTL::protocols::TomosynthesisMultiArcTrajectory< 2 >, CTL::protocols::TomosynthesisMultiArcTrajectory< nbArcs >, CTL::protocols::TomosynthesisCircleTrajectory, CTL::protocols::AxialScanTrajectory, CTL::protocols::ShortScanTrajectory, CTL::protocols::CirclePlusLineTrajectory, CTL::protocols::WobbleTrajectory, CTL::protocols::TubeCurrentModulation, CTL::protocols::FlyingFocalSpot, and CTL::protocols::HelicalTrajectory.

◆ prepareSteps()

CTL::AbstractPreparationProtocol::prepareSteps ( uint  viewNb,
const AcquisitionSetup setup 
) const
pure virtual

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