lsst.jointcal  master-g9041cab851+5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
MeasuredStar.h
Go to the documentation of this file.
1 // -*- LSST-C++ -*-
2 #ifndef LSST_JOINTCAL_MEASURED_STAR_H
3 #define LSST_JOINTCAL_MEASURED_STAR_H
4 
5 #include <iostream>
6 
10 
11 namespace lsst {
12 namespace jointcal {
13 
14 class CcdImage;
15 
18 class MeasuredStar : public BaseStar {
19 public:
20  double mag;
21  double wmag;
22  double chi2;
23 
24 private:
25  unsigned _id; // id in original catalog
26 
27  // on-chip flux, in ADU
28  double _instFlux;
29  double _instFluxErr;
30 
31  const CcdImage *_ccdImage;
32  std::shared_ptr<const FittedStar> _fittedStar;
33  bool _valid;
34 
35 public:
38  : BaseStar(),
39  mag(0.),
40  wmag(0.),
41  _id(0),
42  _instFlux(0.),
43  _instFluxErr(0.),
44  _ccdImage(0),
45  _valid(true) {}
46 
47  MeasuredStar(BaseStar const &baseStar)
48  : BaseStar(baseStar), mag(0.), wmag(0.), _id(0), _instFluxErr(0.), _ccdImage(0), _valid(true) {}
49 
52  MeasuredStar(MeasuredStar const &) = default;
53  MeasuredStar(MeasuredStar &&) = delete;
54  MeasuredStar &operator=(MeasuredStar const &) = delete;
55  MeasuredStar &operator=(MeasuredStar &&) = delete;
56 
57  void setFittedStar(std::shared_ptr<FittedStar> fittedStar) {
58  if (fittedStar) fittedStar->getMeasurementCount()++;
59  _fittedStar = std::move(fittedStar);
60  }
61 
62  void dump(std::ostream &stream = std::cout) const {
63  BaseStar::dump(stream);
64  stream << " id: " << _id << " valid: " << _valid;
65  }
66 
67  void setInstFlux(double instFlux) { _instFlux = instFlux; }
68  void setInstFluxErr(double instFluxErr) { _instFluxErr = instFluxErr; }
69 
70  double getInstFlux() const { return _instFlux; }
71  double getInstFluxErr() const { return _instFluxErr; }
72  double getMag() const { return mag; }
73 
74  void setId(unsigned id) { _id = id; }
75  unsigned getId() { return _id; }
76 
78  double getMagWeight() const { return (_instFlux * _instFlux / (_instFluxErr * _instFluxErr)); }
79 
80  std::shared_ptr<const FittedStar> getFittedStar() const { return _fittedStar; };
81 
82  CcdImage const &getCcdImage() const { return *_ccdImage; };
83 
84  void setCcdImage(const CcdImage *ccdImage) { _ccdImage = ccdImage; };
85 
87  bool isValid() const { return _valid; }
89  void setValid(bool v) { _valid = v; }
90 };
91 
92 /****** MeasuredStarList */
93 
95 class MeasuredStarList : public StarList<MeasuredStar> {
96 public:
98 
99  void setCcdImage(const CcdImage *_ccdImage);
100 };
101 
102 typedef MeasuredStarList::const_iterator MeasuredStarCIterator;
103 typedef MeasuredStarList::iterator MeasuredStarIterator;
104 
107 const BaseStarList &Measured2Base(const MeasuredStarList &This);
108 const BaseStarList *Measured2Base(const MeasuredStarList *This);
109 } // namespace jointcal
110 } // namespace lsst
111 
112 #endif // LSST_JOINTCAL_MEASURED_STAR_H
void setInstFluxErr(double instFluxErr)
Definition: MeasuredStar.h:68
MeasuredStarList::iterator MeasuredStarIterator
Definition: MeasuredStar.h:103
double getInstFlux() const
Definition: MeasuredStar.h:70
MeasuredStar(BaseStar const &baseStar)
Definition: MeasuredStar.h:47
MeasuredStar & operator=(MeasuredStar const &)=delete
std::shared_ptr< const FittedStar > getFittedStar() const
Definition: MeasuredStar.h:80
void dump(std::ostream &stream=std::cout) const
utility
Definition: MeasuredStar.h:62
double getMagWeight() const
the inverse of the mag variance
Definition: MeasuredStar.h:78
void setCcdImage(const CcdImage *ccdImage)
Definition: MeasuredStar.h:84
A list of MeasuredStar. They are usually filled in Associations::AddImage.
Definition: MeasuredStar.h:95
The base class for handling stars. Used by all matching routines.
Definition: BaseStar.h:22
std::lists of Stars.
Definition: StarList.h:35
void setFittedStar(std::shared_ptr< FittedStar > fittedStar)
Definition: MeasuredStar.h:57
MeasuredStarList::const_iterator MeasuredStarCIterator
Definition: MeasuredStar.h:102
double getInstFluxErr() const
Definition: MeasuredStar.h:71
objects measured on actual images.
Definition: MeasuredStar.h:18
void setCcdImage(const CcdImage *_ccdImage)
Definition: MeasuredStar.cc:45
void setValid(bool v)
Fits may use that to discard outliers.
Definition: MeasuredStar.h:89
virtual void dump(std::ostream &stream=std::cout) const
utility
Definition: BaseStar.h:57
CcdImage const & getCcdImage() const
Definition: MeasuredStar.h:82
BaseStarList & Measured2Base(MeasuredStarList &This)
Definition: MeasuredStar.cc:35
void setId(unsigned id)
Definition: MeasuredStar.h:74
Handler of an actual image from a single CCD.
Definition: CcdImage.h:31
bool isValid() const
Fits may use that to discard outliers.
Definition: MeasuredStar.h:87
void setInstFlux(double instFlux)
Definition: MeasuredStar.h:67