00001 /* 00002 * Copyright (c) 2004 CSIRO ICT Centre 00003 * 00004 * $Id: AngularSeparationRefine.h 587 2004-12-03 15:06:33Z nch $ 00005 */ 00006 00007 /* 00008 * AngularSeparationRefine is a Refine that accepts those candidate pairs 00009 * whose angular separations are such that the likelihood that the two 00010 * records represent the same source is greater than some given threshold. 00011 */ 00012 00013 #ifndef ANGULARSEPARATIONREFINE_DEFINED 00014 #define ANGULARSEPARATIONREFINE_DEFINED 00015 00016 #include "String.h" 00017 00018 #include "Refine.h" 00019 #include "Object.h" 00020 00021 class ObjectPairConsumer; 00022 00023 00024 class AngularSeparationRefine : public Refine 00025 { 00026 public: 00027 AngularSeparationRefine(ObjectPairConsumer * mPPCons, ObjectPairConsumer * uPPCons); 00028 ~AngularSeparationRefine(); 00029 virtual String const & getName() const { return name(); }; 00030 virtual bool refine(Object const * red, Object const * blue); 00031 00032 static String const & name() { return s_name; }; 00033 00034 private: 00035 static String s_name; 00036 00037 AngularSeparationRefine(); 00038 AngularSeparationRefine(AngularSeparationRefine const &); 00039 AngularSeparationRefine & operator=(AngularSeparationRefine const &); 00040 }; 00041 00042 #endif // ifndef ANGULARSEPARATIONREFINE_DEFINED 00043