8 #ifndef DP3_STEPS_DATA_TRANSFER_H_
9 #define DP3_STEPS_DATA_TRANSFER_H_
11 #include <casacore/ms/MeasurementSets/MeasurementSet.h>
12 #include <casacore/tables/Tables/TableIter.h>
39 const std::string& prefix);
42 return filter_step_->getRequiredFields();
47 provided_fields |= (transfer_data_ && output_buffer_name_.empty())
51 return provided_fields;
54 bool process(std::unique_ptr<base::DPBuffer> buffer)
final;
60 void show(std::ostream&) const final;
66 void ReadSourceMsVisibilities();
69 void ReadSourceMsFlags();
73 void TransferSingleTimeSlot(
75 const std::vector<common::
rownr_t>& target_row_numbers,
76 const std::vector<
double>& target_frequencies) const;
80 std::
string source_ms_path_;
81 std::
string source_data_column_;
83 casacore::TableIterator ms_iterator_;
88 base::DPBuffer::DataType data_;
89 base::DPBuffer::FlagsType flags_;
99 std::
string output_buffer_name_;
102 std::
size_t timestep_counter_ = 0;
105 std::
size_t time_averaging_factor_;
108 double time_interval_;
111 std::vector<
double> source_channel_upper_edges_;
113 std::shared_ptr<
Step> filter_step_;
Buffer holding the data of a timeslot/band.
DP3 step to filter out baselines and channels.
Class to hold code for virtual base class for Flaggers in DP3.
Implements a map of Key-Value pairs.
Definition: ParameterSet.h:31
This class defines a step in the DP3 pipeline that keeps the result to make it possible to get the re...
Definition: ResultStep.h:16
Abstract base class for a DP3 step.
Definition: Step.h:52
static constexpr dp3::common::Fields kDataField
Definition: Step.h:60
static constexpr dp3::common::Fields kFlagsField
Definition: Step.h:62
DP3 step class to transfer visbility data and flags from a lower to a MS with higher time/freq resolu...
Definition: Transfer.h:34
void show(std::ostream &) const final
Show the step parameters.
void finish() final
Finish the processing of this step and subsequent steps.
Transfer(const common::ParameterSet ¶meter_set, const std::string &prefix)
void showTimings(std::ostream &, double duration) const final
common::Fields getProvidedFields() const final
Definition: Transfer.h:45
common::Fields getRequiredFields() const final
Get the fields required by the current step.
Definition: Transfer.h:41
bool process(std::unique_ptr< base::DPBuffer > buffer) final
void updateInfo(const base::DPInfo &) final
Definition: InputStep.h:21
BaseTimer< std::chrono::steady_clock > NSTimer
Definition: Timer.h:129
unsigned int rownr_t
Definition: Types.h:19
This file has generic helper routines for testing steps.
Definition: AntennaConfig.h:53