-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathAdiosStManScaColumn.h
More file actions
72 lines (68 loc) · 3.37 KB
/
AdiosStManScaColumn.h
File metadata and controls
72 lines (68 loc) · 3.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
// (c) University of Western Australia
// International Centre of Radio Astronomy Research
// M468, 35 Stirling Hwy
// Crawley, Perth WA 6009
// Australia
//
// Shanghai Astronomical Observatory, Chinese Academy of Sciences
// 80 Nandan Road, Shanghai 200030, China
//
// This library is free software: you can redistribute it and/or
// modify it under the terms of the GNU General Public License as published
// by the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License along
// with this library. If not, see <http://www.gnu.org/licenses/>.
//
// Any bugs, questions, concerns and/or suggestions please email to
// lbq@shao.ac.cn, jason.wang@icrar.org
#ifndef ADIOSSTMANSCACOLUMN_H
#define ADIOSSTMANSCACOLUMN_H
#include "AdiosStManColumn.h"
namespace casacore {
class AdiosStManScaColumn : public AdiosStManColumn
{
public:
AdiosStManScaColumn(AdiosStMan *aParent, int aDataType, uInt aColNr);
~AdiosStManScaColumn();
virtual void initAdiosWrite(uInt aNrRows);
virtual void initAdiosRead();
virtual void flush();
// *** access a row for a scalar column ***
// put
virtual void putBoolV (uInt aRowNr, const Bool* aDataPtr);
virtual void putuCharV (uInt aRowNr, const uChar* aDataPtr);
virtual void putShortV (uInt aRowNr, const Short* aDataPtr);
virtual void putuShortV (uInt aRowNr, const uShort* aDataPtr);
virtual void putIntV (uInt aRowNr, const Int* aDataPtr);
virtual void putuIntV (uInt aRowNr, const uInt* aDataPtr);
virtual void putfloatV (uInt aRowNr, const Float* aDataPtr);
virtual void putdoubleV (uInt aRowNr, const Double* aDataPtr);
virtual void putComplexV (uInt aRowNr, const Complex* aDataPtr);
virtual void putDComplexV (uInt aRowNr, const DComplex* aDataPtr);
virtual void putStringV (uInt aRowNr, const String* aDataPtr);
// get
virtual void getBoolV (uInt aRowNr, Bool* aDataPtr);
virtual void getuCharV (uInt aRowNr, uChar* aDataPtr);
virtual void getShortV (uInt aRowNr, Short* aDataPtr);
virtual void getuShortV (uInt aRowNr, uShort* aDataPtr);
virtual void getIntV (uInt aRowNr, Int* aDataPtr);
virtual void getuIntV (uInt aRowNr, uInt* aDataPtr);
virtual void getfloatV (uInt aRowNr, float* aDataPtr);
virtual void getdoubleV (uInt aRowNr, double* aDataPtr);
virtual void getComplexV (uInt aRowNr, Complex* aDataPtr);
virtual void getDComplexV (uInt aRowNr, DComplex* aDataPtr);
virtual void getStringV (uInt aRowNr, String* aDataPtr);
private:
void getScalarMetaV (uint64_t row, void* data);
bool gotScalarColumn;
void *columnCache;
}; // end of class AdiosStManScaColumn
} // end of namespace casa
#endif