LSSTApplications  1.1.2+25,10.0+13,10.0+132,10.0+133,10.0+224,10.0+41,10.0+8,10.0-1-g0f53050+14,10.0-1-g4b7b172+19,10.0-1-g61a5bae+98,10.0-1-g7408a83+3,10.0-1-gc1e0f5a+19,10.0-1-gdb4482e+14,10.0-11-g3947115+2,10.0-12-g8719d8b+2,10.0-15-ga3f480f+1,10.0-2-g4f67435,10.0-2-gcb4bc6c+26,10.0-28-gf7f57a9+1,10.0-3-g1bbe32c+14,10.0-3-g5b46d21,10.0-4-g027f45f+5,10.0-4-g86f66b5+2,10.0-4-gc4fccf3+24,10.0-40-g4349866+2,10.0-5-g766159b,10.0-5-gca2295e+25,10.0-6-g462a451+1
LSSTDataManagementBasePackage
Color.h
Go to the documentation of this file.
1 // -*- lsst-c++ -*-
7 #ifndef LSST_AFW_IMAGE_COLOR_H
8 #define LSST_AFW_IMAGE_COLOR_H
9 
10 #include <cmath>
11 #include <limits>
12 #include "lsst/utils/ieee.h"
13 #include "lsst/afw/image/Filter.h"
14 
15 namespace lsst {
16 namespace afw {
17 namespace image {
18 
28 class Color {
29 public :
30  explicit Color(double g_r=std::numeric_limits<double>::quiet_NaN()) : _g_r(g_r) {}
31 
33  bool isIndeterminate() const { return utils::isnan(_g_r); }
34 
36 
46  bool operator==(Color const & other) const {
47  return (isIndeterminate() && other.isIndeterminate()) || other._g_r == _g_r;
48  }
49  bool operator!=(Color const & other) const { return !operator==(other); }
51 
54  double getLambdaEff(Filter const&
55  ) const { return 1000*_g_r; }
56 private :
57  double _g_r;
58 };
59 
60 }}} // lsst::afw::image
61 
62 #endif
double getLambdaEff(Filter const &) const
Definition: Color.h:54
bool operator==(Color const &other) const
Definition: Color.h:46
int isnan(T t)
Definition: ieee.h:110
table::Key< table::Array< Kernel::Pixel > > image
Definition: FixedKernel.cc:117
Holds an integer identifier for an LSST filter.
Definition: Filter.h:107
bool isIndeterminate() const
Whether the color is the special value that indicates that it is unspecified.
Definition: Color.h:33
bool operator!=(Color const &other) const
Definition: Color.h:49
Color(double g_r=std::numeric_limits< double >::quiet_NaN())
Definition: Color.h:30
Class encapsulating an identifier for an LSST filter.