DP3
Public Member Functions | List of all members
dp3::steps::Predict Class Reference

DP3 step class that predicts visibilities from a source model. This step contains OnePredict sub-steps, that do the actual predictions and optional pre- and postprocessing sub-steps for each OnePredict sub-step. More...

#include <Predict.h>

Inheritance diagram for dp3::steps::Predict:
dp3::steps::ModelDataStep dp3::steps::Step

Public Member Functions

 Predict (const common::ParameterSet &parset, const std::string &prefix, const std::vector< std::string > &source_patterns, MsType input_type=MsType::kRegular)
 
 Predict (const common::ParameterSet &parset, const std::string &prefix, MsType input_type=MsType::kRegular)
 
 ~Predict () override
 
bool accepts (MsType dt) const override
 Boolean if this step can process this type of data. More...
 
void finish () override
 Finish the processing of this step and subsequent steps. More...
 
base::Direction GetFirstDirection () const override
 
common::Fields getProvidedFields () const override
 
common::Fields getRequiredFields () const override
 Get the fields required by the current step. More...
 
MsType outputs () const override
 Return which datatype this step outputs. More...
 
bool process (std::unique_ptr< base::BdaBuffer >) override
 
bool process (std::unique_ptr< base::DPBuffer >) override
 
void setNextStep (std::shared_ptr< Step > next_step) override
 Ensures that all steps, including internal sub-steps, form a single list. More...
 
void SetOperation (const std::string &operation)
 
void SetThreadData (std::mutex *mutex)
 
void show (std::ostream &) const override
 Show the step parameters. More...
 
void updateInfo (const base::DPInfo &) override
 
- Public Member Functions inherited from dp3::steps::ModelDataStep
common::Fields getProvidedFields () const override
 
- Public Member Functions inherited from dp3::steps::Step
 Step ()
 
virtual ~Step ()
 
const base::DPInfogetInfoIn () const
 Get access to the info of the input. More...
 
const base::DPInfogetInfoOut () const
 Get access to the info of the output. More...
 
const Step::ShPtrgetNextStep () const
 Get the next step. More...
 
StepgetPrevStep () const
 Get the previous step. More...
 
void setInfo (const base::DPInfo &)
 
virtual void setNextStep (Step::ShPtr nextStep)
 Set the next step. More...
 
void setPrevStep (Step *prevStep)
 Set the previous step. More...
 
virtual void showCounts (std::ostream &) const
 
virtual void showTimings (std::ostream &, double duration) const
 

Additional Inherited Members

- Public Types inherited from dp3::steps::Step
enum class  MsType { kRegular , kBda }
 To check compatibility between steps before running. More...
 
typedef std::shared_ptr< StepShPtr
 
- Static Public Member Functions inherited from dp3::steps::Step
static void SetThreadingIsInitialized ()
 
- Static Public Attributes inherited from dp3::steps::Step
static constexpr dp3::common::Fields kDataField
 
static constexpr dp3::common::Fields kFlagsField
 
static constexpr dp3::common::Fields kUvwField
 
static constexpr dp3::common::Fields kWeightsField
 
- Protected Member Functions inherited from dp3::steps::Step
virtual void addToMS (const std::string &msName)
 
base::DPInfoGetWritableInfoOut ()
 

Detailed Description

DP3 step class that predicts visibilities from a source model. This step contains OnePredict sub-steps, that do the actual predictions and optional pre- and postprocessing sub-steps for each OnePredict sub-step.

Constructor & Destructor Documentation

◆ Predict() [1/2]

dp3::steps::Predict::Predict ( const common::ParameterSet parset,
const std::string &  prefix,
MsType  input_type = MsType::kRegular 
)

Constructs the object.

Parameters
parsetParameter set with settings for the step.
prefixPrefix for reading settings from 'parset'.
input_typeInput type, Regular (default) or Bda.

◆ Predict() [2/2]

dp3::steps::Predict::Predict ( const common::ParameterSet parset,
const std::string &  prefix,
const std::vector< std::string > &  source_patterns,
MsType  input_type = MsType::kRegular 
)

Constructs the object with explicit source patterns.

Parameters
parsetParameter set with settings for the step.
prefixPrefix for reading settings from 'parset'.
source_patternsSource patterns.
input_typeInput type, Regular (default) or Bda.

◆ ~Predict()

dp3::steps::Predict::~Predict ( )
inlineoverride

Member Function Documentation

◆ accepts()

bool dp3::steps::Predict::accepts ( MsType  dt) const
inlineoverridevirtual

Boolean if this step can process this type of data.

Reimplemented from dp3::steps::Step.

◆ finish()

void dp3::steps::Predict::finish ( )
overridevirtual

Finish the processing of this step and subsequent steps.

Implements dp3::steps::Step.

◆ GetFirstDirection()

base::Direction dp3::steps::Predict::GetFirstDirection ( ) const
overridevirtual
Returns
The direction of the first patch.

Implements dp3::steps::ModelDataStep.

◆ getProvidedFields()

common::Fields dp3::steps::Predict::getProvidedFields ( ) const
inlineoverridevirtual

Get the fields provided (modified and/or created) by the current step. The returned fields thus should not include (required) fields that are forwarded without modifications.

Implements dp3::steps::Step.

◆ getRequiredFields()

common::Fields dp3::steps::Predict::getRequiredFields ( ) const
inlineoverridevirtual

Get the fields required by the current step.

Implements dp3::steps::Step.

◆ outputs()

MsType dp3::steps::Predict::outputs ( ) const
inlineoverridevirtual

Return which datatype this step outputs.

Reimplemented from dp3::steps::Step.

◆ process() [1/2]

bool dp3::steps::Predict::process ( std::unique_ptr< base::BdaBuffer )
overridevirtual

Process the BDA data. When processed, it invokes the process function of the next step. It should return False at the end.

Reimplemented from dp3::steps::Step.

◆ process() [2/2]

bool dp3::steps::Predict::process ( std::unique_ptr< base::DPBuffer buffer)
overridevirtual

Process the data. When processed, the step should invoke the process function of the next step with the same buffer as argument.

Returns
False at the end of the input. True if there is more input.

Reimplemented from dp3::steps::Step.

◆ setNextStep()

void dp3::steps::Predict::setNextStep ( std::shared_ptr< Step next_step)
override

Ensures that all steps, including internal sub-steps, form a single list.

◆ SetOperation()

void dp3::steps::Predict::SetOperation ( const std::string &  operation)

◆ SetThreadData()

void dp3::steps::Predict::SetThreadData ( std::mutex *  mutex)

Forwards thread synchronization structures to its predict sub-step.

See also
OnePredict::SetThreadData().

◆ show()

void dp3::steps::Predict::show ( std::ostream &  ) const
overridevirtual

Show the step parameters.

Implements dp3::steps::Step.

◆ updateInfo()

void dp3::steps::Predict::updateInfo ( const base::DPInfo )
overridevirtual

Update the general info (called by setInfo). The default implementation copies the info.

Reimplemented from dp3::steps::Step.


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