#include <DataAccumulator.h>
Classes | |
struct | DataAccumulatorKey |
Public Member Functions | |
DataAccumulator () | |
virtual | ~DataAccumulator () |
size_t | getNumberOfChunks () const |
size_t | getNumberOfActiveChunks () const |
bool | queryForGet (DataRecord const &record) const |
bool | queryForGet (Double const &time) const |
void | clear () |
bool | get (size_t ichunk, MSDataRecord &record) |
bool | accumulate (DataRecord const &record) |
String | getPolType (size_t ichunk) const |
uInt | getNumPol (size_t ichunk) const |
Private Member Functions | |
bool | isValidRecord (DataRecord const &record) |
Private Attributes | |
std::vector< DataChunk * > | pool_ |
std::vector< Int > | antenna_id_ |
std::vector< Int > | spw_id_ |
std::vector< Int > | field_id_ |
std::vector< Int > | feed_id_ |
std::vector< Int > | scan_ |
std::vector< Int > | subscan_ |
std::vector< String > | intent_ |
std::vector< Matrix< Double > > | direction_ |
std::vector< Double > | interval_ |
std::vector< Float > | temperature_ |
std::vector< Float > | pressure_ |
std::vector< Float > | rel_humidity_ |
std::vector< Float > | wind_speed_ |
std::vector< Float > | wind_direction_ |
std::map< DataAccumulatorKey, uInt, DataAccumulatorKey > | indexer_ |
Double | time_ |
std::vector< bool > | is_free_ |
Definition at line 658 of file DataAccumulator.h.
casa::sdfiller::DataAccumulator::DataAccumulator | ( | ) | [inline] |
Definition at line 692 of file DataAccumulator.h.
virtual casa::sdfiller::DataAccumulator::~DataAccumulator | ( | ) | [inline, virtual] |
Definition at line 698 of file DataAccumulator.h.
References POST_END, and POST_START.
bool casa::sdfiller::DataAccumulator::accumulate | ( | DataRecord const & | record | ) | [inline] |
std::cout << "record is not a valid one" << std::endl;
std::cout << "timestamp mismatch" << std::endl;
std::cout << "status = " << status << std::endl; std::cout << "key (a" << key.antenna_id << ",f" << key.field_id << ",s" << key.spw_id << ",i" << key.intent << ",p" << key.pol_type << ",d" << key.feed_id << "(index " << indexer_[key] << "): TIME=" << time_ << " INTERVAL=" << interval << " polno=" << record.polno << std::endl;
Definition at line 771 of file DataAccumulator.h.
References casa::sdfiller::DataRecord::antenna_id, casa::sdfiller::DataAccumulator::DataAccumulatorKey::antenna_id, casacore::String::assign(), casa::sdfiller::DataRecord::direction, casa::sdfiller::DataAccumulator::DataAccumulatorKey::feed_id, casa::sdfiller::DataRecord::feed_id, casa::sdfiller::DataRecord::field_id, casa::sdfiller::DataAccumulator::DataAccumulatorKey::field_id, casa::sdfiller::DataAccumulator::DataAccumulatorKey::intent, casa::sdfiller::DataRecord::intent, casa::sdfiller::DataRecord::interval, casa::isValidRecord(), casa::sdfiller::DataAccumulator::DataAccumulatorKey::pol_type, casa::sdfiller::DataRecord::pol_type, POST_END, POST_START, casa::sdfiller::DataRecord::pressure, casa::sdfiller::DataRecord::rel_humidity, casa::sdfiller::DataRecord::scan, casa::sdfiller::DataAccumulator::DataAccumulatorKey::spw_id, casa::sdfiller::DataRecord::spw_id, casa::sdfiller::DataRecord::subscan, casa::sdfiller::DataRecord::temperature, casa::time, casa::sdfiller::DataRecord::time, casa::sdfiller::DataRecord::wind_direction, and casa::sdfiller::DataRecord::wind_speed.
void casa::sdfiller::DataAccumulator::clear | ( | ) | [inline] |
Definition at line 729 of file DataAccumulator.h.
bool casa::sdfiller::DataAccumulator::get | ( | size_t | ichunk, | |
MSDataRecord & | record | |||
) | [inline] |
std::cout << "get Chunk status = " << status << std::endl;
Definition at line 736 of file DataAccumulator.h.
References POST_END, and POST_START.
size_t casa::sdfiller::DataAccumulator::getNumberOfActiveChunks | ( | ) | const [inline] |
Definition at line 712 of file DataAccumulator.h.
References casacore::C::c.
size_t casa::sdfiller::DataAccumulator::getNumberOfChunks | ( | ) | const [inline] |
Definition at line 708 of file DataAccumulator.h.
uInt casa::sdfiller::DataAccumulator::getNumPol | ( | size_t | ichunk | ) | const [inline] |
Definition at line 881 of file DataAccumulator.h.
String casa::sdfiller::DataAccumulator::getPolType | ( | size_t | ichunk | ) | const [inline] |
Definition at line 876 of file DataAccumulator.h.
bool casa::sdfiller::DataAccumulator::isValidRecord | ( | DataRecord const & | record | ) | [inline, private] |
std::cout << record.time << " " << record.interval << " " << record.antenna_id << " " << record.field_id << " " << record.feed_id << " " << record.spw_id << " " << record.scan << " " << record.subscan << " " << record.direction << std::endl;
Definition at line 887 of file DataAccumulator.h.
References casa::sdfiller::DataRecord::antenna_id, casa::sdfiller::DataRecord::direction, casacore::ArrayBase::empty(), casa::sdfiller::DataRecord::feed_id, casa::sdfiller::DataRecord::field_id, casa::sdfiller::DataRecord::interval, casa::sdfiller::DataRecord::scan, casa::sdfiller::DataRecord::spw_id, casa::sdfiller::DataRecord::subscan, and casa::sdfiller::DataRecord::time.
bool casa::sdfiller::DataAccumulator::queryForGet | ( | Double const & | time | ) | const [inline] |
Definition at line 724 of file DataAccumulator.h.
bool casa::sdfiller::DataAccumulator::queryForGet | ( | DataRecord const & | record | ) | const [inline] |
Definition at line 718 of file DataAccumulator.h.
References casa::time, and casa::sdfiller::DataRecord::time.
std::vector<Int> casa::sdfiller::DataAccumulator::antenna_id_ [private] |
Definition at line 898 of file DataAccumulator.h.
std::vector<Matrix<Double> > casa::sdfiller::DataAccumulator::direction_ [private] |
Definition at line 905 of file DataAccumulator.h.
std::vector<Int> casa::sdfiller::DataAccumulator::feed_id_ [private] |
Definition at line 901 of file DataAccumulator.h.
std::vector<Int> casa::sdfiller::DataAccumulator::field_id_ [private] |
Definition at line 900 of file DataAccumulator.h.
std::map<DataAccumulatorKey, uInt, DataAccumulatorKey> casa::sdfiller::DataAccumulator::indexer_ [private] |
Definition at line 912 of file DataAccumulator.h.
std::vector<String> casa::sdfiller::DataAccumulator::intent_ [private] |
Definition at line 904 of file DataAccumulator.h.
std::vector<Double> casa::sdfiller::DataAccumulator::interval_ [private] |
Definition at line 906 of file DataAccumulator.h.
std::vector<bool> casa::sdfiller::DataAccumulator::is_free_ [private] |
Definition at line 914 of file DataAccumulator.h.
std::vector<DataChunk *> casa::sdfiller::DataAccumulator::pool_ [private] |
Definition at line 897 of file DataAccumulator.h.
std::vector<Float> casa::sdfiller::DataAccumulator::pressure_ [private] |
Definition at line 908 of file DataAccumulator.h.
std::vector<Float> casa::sdfiller::DataAccumulator::rel_humidity_ [private] |
Definition at line 909 of file DataAccumulator.h.
std::vector<Int> casa::sdfiller::DataAccumulator::scan_ [private] |
Definition at line 902 of file DataAccumulator.h.
std::vector<Int> casa::sdfiller::DataAccumulator::spw_id_ [private] |
Definition at line 899 of file DataAccumulator.h.
std::vector<Int> casa::sdfiller::DataAccumulator::subscan_ [private] |
Definition at line 903 of file DataAccumulator.h.
std::vector<Float> casa::sdfiller::DataAccumulator::temperature_ [private] |
Definition at line 907 of file DataAccumulator.h.
Double casa::sdfiller::DataAccumulator::time_ [private] |
Definition at line 913 of file DataAccumulator.h.
std::vector<Float> casa::sdfiller::DataAccumulator::wind_direction_ [private] |
Definition at line 911 of file DataAccumulator.h.
std::vector<Float> casa::sdfiller::DataAccumulator::wind_speed_ [private] |
Definition at line 910 of file DataAccumulator.h.