3 #ifndef GCP_UTIL_PTSRCREADER_H
4 #define GCP_UTIL_PTSRCREADER_H
15 #include "gcp/util/common/Angle.h"
16 #include "gcp/util/common/Declination.h"
17 #include "gcp/util/common/Exception.h"
18 #include "gcp/util/common/Flux.h"
19 #include "gcp/util/common/HourAngle.h"
20 #include "gcp/util/common/String.h"
22 #include "gcp/cfitsio/common/fitsio.h"
135 return (src1.survey_ < src2.survey_) || (src1.survey_ == src2.survey_ && src1.name_.str() <= src2.name_.str());
140 return (src1.survey_ == src2.survey_ && src1.name_.str() == src2.name_.str());
160 Flux fMin=minFlux_,
Flux fMax=maxFlux_,
bool doPrint=
true);
165 Flux fMin=minFlux_,
Flux fMax=maxFlux_);
183 virtual void openCatalogFile() = 0;
184 virtual void closeCatalogFile() = 0;
188 virtual Source readNextEntry() = 0;
192 virtual bool eof() = 0;
196 virtual void applyCorrections(
Source& src);
204 static Flux minFlux_;
205 static Flux maxFlux_;
214 std::string catalogFile_;
217 long sourceIndices_[25];
231 class Src_eq :
public std::unary_function<PtSrcReader::Source, bool> {
235 bool operator() (
const PtSrcReader::Source* src)
const {
return (src_ != src && src_->survey_ == src->survey_ && src_->name_ == src->name_);}
240 struct Src_lt :
public std::binary_function<PtSrcReader::Source, PtSrcReader::Source, bool> {
243 COUT(
"Here: Src_lt");
244 return (src1.survey_ < src2.survey_ && src1.name_.str() < src2.name_.str());
254 #endif // End #ifndef GCP_UTIL_PTSRCREADER_H
virtual void setRaRange(HourAngle &ra, Declination &dec, Angle &radius)
Definition: PtSrcReader.cc:299
PtSrcReader()
Definition: PtSrcReader.cc:30
void printHeader(std::ostream &os)
Definition: PtSrcReader.cc:84
void indexSources()
Definition: PtSrcReader.cc:339
void setCatalogFile(std::string catalogFile)
Definition: PtSrcReader.cc:52
std::vector< PtSrcReader::Source > findSources(HourAngle ra, Declination dec, Angle radius, Flux fMin=minFlux_, Flux fMax=maxFlux_, bool doPrint=true)
Definition: PtSrcReader.cc:187
virtual ~PtSrcReader()
Definition: PtSrcReader.cc:47
void throwCfitsioError(int status)
Definition: PtSrcReader.cc:325
void initialize()
Definition: PtSrcReader.cc:38
Definition: HourAngle.h:17
Definition: PtSrcReader.h:231
Definition: Declination.h:20
bool checkAngle(PtSrcReader::Source &src, HourAngle &ra, Declination &dec, Angle &radius)
Definition: PtSrcReader.cc:60
Definition: PtSrcReader.h:35
unsigned countSources(HourAngle ra, Declination dec, Angle radius, Flux fMin=minFlux_, Flux fMax=maxFlux_)
Definition: PtSrcReader.cc:249
Definition: PtSrcReader.h:240
Definition: PtSrcReader.h:29