#include <VisibilityProcessing.h>
Classes | |
class | VpSet |
Public Member Functions | |
VpContainer (const String &name, const vector< String > &inputs=vector< String >(1,"In"), const vector< String > &outputs=vector< String >()) | |
Creates a VpContainer object providing the specified inputs and outputs. | |
virtual | ~VpContainer () |
virtual void | add (VisibilityProcessor *processor) |
Adds a VP to the container. | |
virtual void | connect (VisibilityProcessor *sourceVp, const String &sourcePortName, VisibilityProcessor *sinkVp, const String &sinkPortName) |
Connects the specified output to the specified input. | |
virtual void | connect (const String &sourcePortName, VisibilityProcessor *sinkVp, const String &sinkPortName) |
virtual void | connect (VisibilityProcessor *sourceVp, const String &sourcePortName, const String &sinkPortName) |
virtual void | chunkStart (const SubchunkIndex &sci) |
chunkStart is called to inform the VP that a new chunk is starting. | |
virtual void | fillWithSequence (VisibilityProcessor *first,...) |
Fills the container with the specified set of VPs. | |
virtual casa::asyncio::PrefetchColumns | getPrefetchColumns () const |
Returns the columns that are required to be prefetched if async I/O is used. | |
Protected Types | |
typedef vector < VisibilityProcessor * > | VPs |
typedef VPs::const_iterator | const_iterator |
typedef VPs::iterator | iterator |
Protected Member Functions | |
iterator | begin () |
const_iterator | begin () const |
Bool | contains (const VisibilityProcessor *) const |
virtual ProcessingResult | doProcessingImpl (ProcessingType processingType, VpData &inputData, const SubchunkIndex &subChunkIndex) |
Requests processing of the provided (possibly empty) input data. | |
Bool | empty () const |
iterator | end () |
const_iterator | end () const |
virtual void | processingStartImpl () |
Called when data processing is about to beging; this allows the VP to perform any initialization that it desires now that it is completely connected into the graph. | |
size_t | size () const |
virtual void | validateImpl () |
Called to allow the node to validate its initial state. | |
Private Types | |
typedef std::map< VpPort, VpPort > | Network |
typedef std::set< VpPort > | NetworkReverse |
typedef std::tuple < VisibilityProcessor *, VpData > | ReadyVpAndData |
Private Member Functions | |
ReadyVpAndData | findReadyVp (VpSet &vpsWaiting, VpData &inputs, bool flushing) const |
ReadyVpAndData | findReadyVpFlushing (VpSet &vpsWaiting, VpData &inputs) const |
ReadyVpAndData | findReadyVpNormal (VpSet &vpsWaiting, VpData &inputs) const |
bool | follows (const VisibilityProcessor *a, const VisibilityProcessor *b) const |
bool | followsSet (const VisibilityProcessor *a, const VpSet &vpSet) const |
void | orderContents () |
void | remapPorts (VpData &data, const VisibilityProcessor *) |
pair< VpPort, VpPort > | validateConnectionPorts (VisibilityProcessor *sourceVp, const String &sourcePortName, VisibilityProcessor *sinkVp, const String &sinkPortName) |
Private Attributes | |
Network | network_p |
NetworkReverse | networkReverse_p |
VPs | vps_p |
backwards order. | |
Friends | |
class | VisibilityProcessing |
Definition at line 489 of file VisibilityProcessing.h.
typedef VPs::const_iterator casa::vpf::VpContainer::const_iterator [protected] |
Definition at line 533 of file VisibilityProcessing.h.
typedef VPs::iterator casa::vpf::VpContainer::iterator [protected] |
Definition at line 534 of file VisibilityProcessing.h.
typedef std::map<VpPort, VpPort> casa::vpf::VpContainer::Network [private] |
Definition at line 552 of file VisibilityProcessing.h.
typedef std::set<VpPort> casa::vpf::VpContainer::NetworkReverse [private] |
Definition at line 553 of file VisibilityProcessing.h.
typedef std::tuple<VisibilityProcessor *, VpData> casa::vpf::VpContainer::ReadyVpAndData [private] |
Definition at line 554 of file VisibilityProcessing.h.
typedef vector<VisibilityProcessor *> casa::vpf::VpContainer::VPs [protected] |
Definition at line 532 of file VisibilityProcessing.h.
casa::vpf::VpContainer::VpContainer | ( | const String & | name, | |
const vector< String > & | inputs = vector< String >(1,"In") , |
|||
const vector< String > & | outputs = vector< String >() | |||
) |
Creates a VpContainer object providing the specified inputs and outputs.
These inputs and outputs will potentially be connected to the inputs and outputs of the VPs that are contained in the container.
virtual casa::vpf::VpContainer::~VpContainer | ( | ) | [inline, virtual] |
Definition at line 503 of file VisibilityProcessing.h.
virtual void casa::vpf::VpContainer::add | ( | VisibilityProcessor * | processor | ) | [virtual] |
Adds a VP to the container.
Exception if VP is already in the container.
const_iterator casa::vpf::VpContainer::begin | ( | ) | const [protected] |
iterator casa::vpf::VpContainer::begin | ( | ) | [protected] |
virtual void casa::vpf::VpContainer::chunkStart | ( | const SubchunkIndex & | ) | [virtual] |
chunkStart is called to inform the VP that a new chunk is starting.
Reimplemented from casa::vpf::VisibilityProcessor.
virtual void casa::vpf::VpContainer::connect | ( | VisibilityProcessor * | sourceVp, | |
const String & | sourcePortName, | |||
const String & | sinkPortName | |||
) | [virtual] |
virtual void casa::vpf::VpContainer::connect | ( | const String & | sourcePortName, | |
VisibilityProcessor * | sinkVp, | |||
const String & | sinkPortName | |||
) | [virtual] |
virtual void casa::vpf::VpContainer::connect | ( | VisibilityProcessor * | sourceVp, | |
const String & | sourcePortName, | |||
VisibilityProcessor * | sinkVp, | |||
const String & | sinkPortName | |||
) | [virtual] |
Connects the specified output to the specified input.
The VP pointer may be omitted if the port belongs to the container.
Bool casa::vpf::VpContainer::contains | ( | const VisibilityProcessor * | ) | const [protected] |
virtual ProcessingResult casa::vpf::VpContainer::doProcessingImpl | ( | ProcessingType | processingType, | |
VpData & | inputData, | |||
const SubchunkIndex & | subChunkIndex | |||
) | [protected, virtual] |
Requests processing of the provided (possibly empty) input data.
This is called on each subchunk (then inputData will be nonempty) and at the end of a chunk and the end of the entire data set. These last two call types allow the VP to output any data that it might have been accumulating across multiple subchunks, etc.
Implements casa::vpf::VisibilityProcessor.
Bool casa::vpf::VpContainer::empty | ( | ) | const [protected] |
const_iterator casa::vpf::VpContainer::end | ( | ) | const [protected] |
iterator casa::vpf::VpContainer::end | ( | ) | [protected] |
virtual void casa::vpf::VpContainer::fillWithSequence | ( | VisibilityProcessor * | first, | |
... | ||||
) | [virtual] |
Fills the container with the specified set of VPs.
The container must be empty prior to this call.
ReadyVpAndData casa::vpf::VpContainer::findReadyVp | ( | VpSet & | vpsWaiting, | |
VpData & | inputs, | |||
bool | flushing | |||
) | const [private] |
ReadyVpAndData casa::vpf::VpContainer::findReadyVpFlushing | ( | VpSet & | vpsWaiting, | |
VpData & | inputs | |||
) | const [private] |
ReadyVpAndData casa::vpf::VpContainer::findReadyVpNormal | ( | VpSet & | vpsWaiting, | |
VpData & | inputs | |||
) | const [private] |
bool casa::vpf::VpContainer::follows | ( | const VisibilityProcessor * | a, | |
const VisibilityProcessor * | b | |||
) | const [private] |
bool casa::vpf::VpContainer::followsSet | ( | const VisibilityProcessor * | a, | |
const VpSet & | vpSet | |||
) | const [private] |
virtual casa::asyncio::PrefetchColumns casa::vpf::VpContainer::getPrefetchColumns | ( | ) | const [virtual] |
Returns the columns that are required to be prefetched if async I/O is used.
Reimplemented from casa::vpf::VisibilityProcessor.
void casa::vpf::VpContainer::orderContents | ( | ) | [private] |
virtual void casa::vpf::VpContainer::processingStartImpl | ( | ) | [protected, virtual] |
Called when data processing is about to beging; this allows the VP to perform any initialization that it desires now that it is completely connected into the graph.
Reimplemented from casa::vpf::VisibilityProcessor.
void casa::vpf::VpContainer::remapPorts | ( | VpData & | data, | |
const VisibilityProcessor * | ||||
) | [private] |
size_t casa::vpf::VpContainer::size | ( | ) | const [protected] |
pair<VpPort,VpPort> casa::vpf::VpContainer::validateConnectionPorts | ( | VisibilityProcessor * | sourceVp, | |
const String & | sourcePortName, | |||
VisibilityProcessor * | sinkVp, | |||
const String & | sinkPortName | |||
) | [private] |
virtual void casa::vpf::VpContainer::validateImpl | ( | ) | [protected, virtual] |
Called to allow the node to validate its initial state.
An AipsError should be thrown if this node decides that it is invalid.
Implements casa::vpf::VisibilityProcessor.
friend class VisibilityProcessing [friend] |
Definition at line 491 of file VisibilityProcessing.h.
Network casa::vpf::VpContainer::network_p [private] |
Definition at line 564 of file VisibilityProcessing.h.
Definition at line 565 of file VisibilityProcessing.h.
VPs casa::vpf::VpContainer::vps_p [private] |
backwards order.
Definition at line 567 of file VisibilityProcessing.h.