source: Sophya/trunk/Poubelle/archTOI.old/archtoi.h@ 503

Last change on this file since 503 was 432, checked in by ansari, 26 years ago

en cours

File size: 1.7 KB
Line 
1// archtoi.h
2// Eric Aubourg CEA/DAPNIA/SPP juillet 1999
3
4#ifndef ARCHTOI_H
5#define ARCHTOI_H
6
7#include <iostream.h>
8#include <string>
9#include <list>
10#include <vector>
11#include "toisvr.h"
12#include "fitsio.h"
13
14using namespace std;
15
16class ArchTOI : public RequestHandler {
17public:
18 ArchTOI(istream& str);
19 ArchTOI(string const& filename);
20
21 void run(string const& outfilename);
22
23 enum fmt {ascii_fmt, fits_fmt};
24 enum flg {hasflag = 1,
25 useNA = 2};
26
27 virtual bool processTOIReq(string line, string toiname, TOIKind toi, int index,
28 bool interp, bool repet, bool flag, bool notrig);
29 virtual bool processOption(string keyw, string args);
30
31protected:
32 void init();
33 TOISvr svr;
34 list<string> headertoi;
35 list<string> headeropt;
36 list<string> toinames;
37 vector<flg> toiflags;
38 fmt format;
39 string undef;
40 double undefV;
41 bool allBolos; // tous les bolos dans le header. Sinon seulement bolos transmis.
42
43 void (ArchTOI::*openFile)(string const& filename);
44 void (ArchTOI::*outHeader)(TOIIter& iter);
45 void (ArchTOI::*outValue)(int icolumn, double value, bool notdef=false);
46 void (ArchTOI::*endLine)();
47 void (ArchTOI::*closeFile)();
48
49 void openFile_A(string const& filename);
50 void outHeader_A(TOIIter& iter);
51 void outValue_A(int icolumn, double value, bool notdef=false);
52 void endLine_A();
53 void closeFile_A();
54
55 void openFile_F(string const& filename);
56 void outHeader_F(TOIIter& iter);
57 void outValue_F(int icolumn, double value, bool notdef=false);
58 void endLine_F();
59 void closeFile_F();
60
61 fitsfile* fptr;
62 int fitsStatus;
63 int fitsLine;
64 ostream* ostr;
65
66 string requestVersion;
67 list<string> comments;
68};
69
70#endif
Note: See TracBrowser for help on using the repository browser.