8 #ifndef SINGLEDISH_FILLER_DATARECORD_H_
9 #define SINGLEDISH_FILLER_DATARECORD_H_
22 void copyStorage(
size_t n, T
const *src, T *dst) {
23 for (
size_t i = n; i < n; ++i) {
29 void copyStorage(
size_t n,
size_t m,
size_t stride, T
const *src, T *dst) {
30 for (
size_t i = 0; i < m; ++i) {
31 copyStorage(n, src + stride * m, dst + stride * m);
100 while (new_num_storage < n) {
128 while (new_num_storage < n) {
152 while (new_num_storage < n) {
282 for (
size_t i = 0; i < 4; ++i) {
343 while (new_num_storage < n * m) {
348 if (!new_data_storage) {
354 reinterpret_cast<casacore::Float *>(new_data_storage));
358 reinterpret_cast<casacore::Complex *>(new_data_storage));
361 void *new_flag_storage = malloc(new_num_storage *
sizeof(
casacore::Bool));
362 if (!new_flag_storage) {
367 reinterpret_cast<casacore::Bool *>(new_flag_storage));
400 while (new_num_storage < n * m) {
404 void *new_tsys_storage = malloc(new_num_storage *
sizeof(
casacore::Float));
407 reinterpret_cast<casacore::Float *>(new_tsys_storage));
432 while (new_num_storage < n * m) {
436 void *new_tcal_storage = malloc(new_num_storage *
sizeof(
casacore::Float));
439 reinterpret_cast<casacore::Float *>(new_tcal_storage));
A Vector of integers, for indexing into Array<T> objects.
casacore::Matrix< casacore::Float > tsys
optional
void setTsysSize(size_t n, size_t m)
Vector< T > column(size_t j)
Returns a reference to the j'th column.
std::unique_ptr< casacore::Float[]> tcal_storage_
Share means that the Array will just use the pointer (no copy), however the Array will NOT delete it ...
casacore::Double time
mandatory
void setTcalSize(size_t n)
std::unique_ptr< void, sdfiller::Deleter > tsys_storage_
casacore::Float wind_speed
const IPosition & shape() const
The length of each axis of the Matrix.
std::complex< Float > Complex
casacore::Float temperature
casacore::Float wind_speed
DataRecord(DataRecord const &other)
casacore::Vector< casacore::Float > & weight
casacore::Vector< casacore::Float > data
casacore::String pol_type
void setDataSize(size_t n, size_t m)
casacore::Stokes::StokesTypes pol
casacore::Float wind_direction
MSDataRecord & operator=(MSDataRecord const &other)
casacore::Matrix< casacore::Double > direction_slice
casacore::Matrix< casacore::Float > float_data
casacore::Matrix< casacore::Bool > flag
casacore::Vector< casacore::Double > direction_vector
casacore::Bool isFloat() const
casacore::Vector< casacore::Float > sigma
casacore::IPosition tcal_shape_
casacore::Block< casacore::Int > corr_type_storage_
casacore::IPosition tsys_shape_
casacore::Vector< casacore::Double > scan_rate
MSDataRecord(MSDataRecord const &other)
casacore::Vector< casacore::Float > tsys
optional
StokesTypes
The Stokes types are defined by this enum.
std::unique_ptr< casacore::Bool[]> flag_storage_
ABSTRACT CLASSES Deliberately vague to be general enough to allow for many different types of data
T * data()
Get a pointer to the beginning of the array.
std::unique_ptr< casacore::Float[]> sigma_storage_
casacore::Vector< casacore::Bool > flag
casacore::IPosition data_shape_
void setTcalSize(size_t n, size_t m)
casacore::Vector< casacore::Int > corr_type
void setDataSize(size_t n)
std::unique_ptr< void, sdfiller::Deleter > tcal_storage_
std::unique_ptr< void, sdfiller::Deleter > flag_storage_
casacore::Vector< casacore::Float > tcal
std::unique_ptr< void, sdfiller::Deleter > data_storage_
casacore::Float rel_humidity
casacore::IPosition tcal_shape_
casacore::IPosition tsys_shape_
casacore::Matrix< casacore::Complex > complex_data
casacore::Double interval
casacore::Double time
mandatory
bool Bool
Define the standard types used by Casacore.
casacore::Matrix< casacore::Double > direction
casacore::String pol_type
casacore::Float temperature
std::unique_ptr< casacore::Float[]> data_storage_
casacore::Matrix< casacore::Float > tcal
casacore::Float wind_direction
casacore::Matrix< casacore::Double > direction
casacore::Float rel_humidity
virtual void takeStorage(const IPosition &shape, T *storage, StorageInitPolicy policy=COPY)
Replace the data values with those in the pointer storage.
Base class for all Casacore library errors.
std::unique_ptr< casacore::Float[]> tsys_storage_
DataRecord & operator=(DataRecord const &other)
String: the storage and methods of handling collections of characters.
T * storage()
If you really, really, need a "raw" pointer to the beginning of the storage area this will give it to...
casacore::IPosition data_shape_
virtual void reference(const Array< T > &other)
Create a reference to "other", which must be of dimension one.
casacore::Double interval
void setTsysSize(size_t n)
casacore::Matrix< casacore::Double > direction_slice
casacore::IPosition corr_type_shape_
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.