source: Sophya/trunk/Poubelle/archTOI.old/starmatcher.h@ 654

Last change on this file since 654 was 555, checked in by ansari, 26 years ago

portage cxx en cours

File size: 1.5 KB
RevLine 
[555]1// starmatcher.h
2// Eric Aubourg CEA/DAPNIA/SPP novembre 1999
3
[534]4#ifndef STARMATCHER_H
5#define STARMATCHER_H
6
7
8#include "sststarfinder.h"
[555]9#include "toiderivproducer.h"
[534]10
[555]11class StarMatcher: public SSTStarProcessor, public TOIDerivProducer {
[534]12public:
13 StarMatcher();
14
15 virtual void dataFeed(SSTEtoile const&);
16
17 virtual string getName();
18 virtual double getValue(long sampleNum, TOI const& toi);
[555]19 virtual bool canGetValue(long sampleNum, TOI const& toi);
20 virtual bool canGetValueLater(long sampleNum, TOI const& toi);
[534]21
22protected:
23 virtual set<TOI> reqTOIFor(TOI const&);
[555]24 void propagateLowBound(TOI const& toi, long sampleNum);
25 void processStars();
26
[534]27 struct gscStar {
28 float ra;
29 float dec;
30 short mag; // mag * 100
31 };
[555]32
[534]33
34 gscStar* stars;
35 long nstars;
36
[555]37 deque<SSTEtoile> lastStars;
38
39 struct matchStar {
40 double SN;
41 double raGSC;
42 double decGSC;
43 double azGSC;
44 double elvGSC;
45 int nDiode;
46 bool ok;
47 long seq;
48 double lon;
49 double lat;
50 double ts;
51 };
52
53 long lastSeq;
54
55 deque<matchStar> matchStars;
56 deque<matchStar> cleanStars;
57
58 struct pendulInfo {
59 double SN;
60 double azPendul;
61 double angPendul;
62 };
63
64 struct posInfo {
65 double SN;
66 double azStar;
67 double elvStar;
68 double diodStar;
69 double lon;
70 double lat;
71 double ts;
72 };
73
74 map<double, posInfo> posInfos; // sampleNum -> info
75 map<double, pendulInfo> pendulInfos; // sampleNum -> info
76
77 int getPendulInfo(double sampleNum, pendulInfo& info); // interpolate
78
[534]79};
80
81
82#endif
Note: See TracBrowser for help on using the repository browser.