General Purpose Geodetic Library
SgIoDriver.h
Go to the documentation of this file.
1 /*
2  *
3  * This file is a part of Space Geodetic Library. The library is used by
4  * nuSolve, a part of CALC/SOLVE system, and designed to make analysis of
5  * geodetic VLBI observations.
6  * Copyright (C) 2010-2020 Sergei Bolotin.
7  *
8  * This program is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program. If not, see <http://www.gnu.org/licenses/>.
20  *
21  */
22 
23 #ifndef SG_IO_DRIVER
24 #define SG_IO_DRIVER
25 
26 
27 #ifdef HAVE_CONFIG_H
28 # include <config.h>
29 #endif
30 
31 
32 
33 
34 
35 #include <QtCore/QList>
36 
37 
38 #include <SgConstants.h>
39 #include <SgLogger.h>
40 #include <SgMJD.h>
41 
42 
43 
44 
45 /*=====================================================================================================*/
46 
47 
48 
49 
50 /*=====================================================================================================*/
52 {
53  SD_NumObs = -1,
54  SD_NumScans = -2,
55  SD_NumChans = -3,
56  SD_NumStnPts = -4,
57  SD_NumSrc = -5,
58  SD_NumStn = -6,
59  SD_2NumChans = -7,
60  SD_NumBands = -8,
61  SD_NumBln = -9,
62  SD_Any = -200,
63 };
64 
65 
66 
67 
68 /***===================================================================================================*/
74 class SgIdentities;
75 class SgVersion;
76 //
78 {
79 public:
80  //
81  // Constructors/destructors:
82  //
86  SgIoDriver(const SgIdentities* ids, const SgVersion* dv);
87 
91  virtual ~SgIoDriver();
92 
93 
94  //
95  // Interfaces:
96  //
97  // gets:
100  inline const SgMJD& getDateOfCreation() const {return dateOfCreation_;};
101 
102  inline const SgIdentities* getCurrentIdentities() const {return currentIdentities_;};
104  inline const SgVersion* getCurrentDriverVersion() const {return currentDriverVersion_;};
105  //inline SgVersion* getInputDriverVersion() const {return inputDriverVersion_;};
106 
107 
108 
109  // sets:
110  inline void setDateOfCreation(const SgMJD& t) {dateOfCreation_ = t;};
111 
112 
113  //
114  // Functions:
115  //
118  static const QString className();
119 
122  virtual const QList<QString> listOfInputFiles() const = 0;
123 
124 
125 
126  //
127  // Friends:
128  //
129 
130 protected:
131  SgMJD dateOfCreation_; // "RunTimeTag 2014/02/10 08:28:53"
132  // identities:
136 // SgVersion *inputDriverVersion_;
137 
138 
139 };
140 
141 
142 
143 /*=====================================================================================================*/
144 //
145 // constants:
146 //
147 
148 
149 
150 /*=====================================================================================================*/
151 
152 
153 /*=====================================================================================================*/
154 #endif //SG_IO_DRIVER
155 
SpecDims
Definition: SgIoDriver.h:52
@ SD_NumBln
Definition: SgIoDriver.h:61
@ SD_NumChans
Definition: SgIoDriver.h:55
@ SD_NumStn
Definition: SgIoDriver.h:58
@ SD_2NumChans
Definition: SgIoDriver.h:59
@ SD_NumObs
Definition: SgIoDriver.h:53
@ SD_NumScans
Definition: SgIoDriver.h:54
@ SD_NumStnPts
Definition: SgIoDriver.h:56
@ SD_Any
Definition: SgIoDriver.h:62
@ SD_NumSrc
Definition: SgIoDriver.h:57
@ SD_NumBands
Definition: SgIoDriver.h:60
static const QString className()
Definition: SgIoDriver.cpp:39
SgIoDriver(const SgIdentities *ids, const SgVersion *dv)
Definition: SgIoDriver.cpp:47
const SgIdentities * currentIdentities_
Definition: SgIoDriver.h:133
const SgMJD & getDateOfCreation() const
Definition: SgIoDriver.h:100
virtual const QList< QString > listOfInputFiles() const =0
const SgIdentities * getCurrentIdentities() const
Definition: SgIoDriver.h:102
const SgVersion * currentDriverVersion_
Definition: SgIoDriver.h:134
virtual ~SgIoDriver()
Definition: SgIoDriver.cpp:59
const SgVersion * getCurrentDriverVersion() const
Definition: SgIoDriver.h:104
SgMJD dateOfCreation_
Definition: SgIoDriver.h:131
SgIdentities * getInputIdentities() const
Definition: SgIoDriver.h:103
SgIdentities * inputIdentities_
Definition: SgIoDriver.h:135
void setDateOfCreation(const SgMJD &t)
Definition: SgIoDriver.h:110
Definition: SgMJD.h:59