25 #ifndef LSST_AFW_TABLE_MATCH_H 26 #define LSST_AFW_TABLE_MATCH_H 49 "Return only the closest match if more than one is found " 52 "Produce symmetric matches (default: true):\n" 53 "i.e. if (s1, s2, d) is reported, then so is (s2, s1, d)");
55 "Include failed matches (i.e. one 'match' is NULL) " 66 template <
typename Record1,
typename Record2>
72 Match() : first(), second(), distance(0.0) {}
75 : first(r1), second(r2), distance(dist) {}
77 template <
typename R1,
typename R2>
152 template <
typename Cat1,
typename Cat2>
168 template <
typename Cat>
191 template <
typename Cat1,
typename Cat2>
211 template <
typename Cat>
224 template <
typename Record1,
typename Record2>
246 template <
typename Cat1,
typename Cat2>
254 #endif // #ifndef LSST_AFW_TABLE_MATCH_H bool findOnlyClosest
"Return only the closest match if more than one is found " "(default: true)" ;
Match< SimpleRecord, SimpleRecord > SimpleMatch
std::vector< ReferenceMatch > ReferenceMatchVector
#define LSST_CONTROL_FIELD(NAME, TYPE, DOC)
A preprocessor macro used to define fields in C++ "control object" structs.
A class representing an angle.
std::vector< Match< typename Cat1::Record, typename Cat2::Record > > unpackMatches(BaseCatalog const &matches, Cat1 const &cat1, Cat2 const &cat2)
Reconstruct a MatchVector from a BaseCatalog representation of the matches and a pair of catalogs...
Match(Match< R1, R2 > const &other)
Pass parameters to algorithms that match list of sources.
A base class for image defects.
std::shared_ptr< Record2 > second
Lightweight representation of a geometric match between two records.
std::vector< SimpleMatch > SimpleMatchVector
Match(std::shared_ptr< Record1 > const &r1, std::shared_ptr< Record2 > const &r2, double dist)
Match< SimpleRecord, SourceRecord > ReferenceMatch
std::shared_ptr< Record1 > first
BaseCatalog packMatches(std::vector< Match< Record1, Record2 > > const &matches)
Return a table representation of a MatchVector that can be used to persist it.
std::vector< Match< typename Cat1::Record, typename Cat2::Record > > matchRaDec(Cat1 const &cat1, Cat2 const &cat2, lsst::geom::Angle radius, MatchControl const &mc=MatchControl())
Compute all tuples (s1,s2,d) where s1 belings to cat1, s2 belongs to cat2 and d, the distance between...
SourceMatchVector matchXy(SourceCatalog const &cat1, SourceCatalog const &cat2, double radius, MatchControl const &mc=MatchControl())
Compute all tuples (s1,s2,d) where s1 belings to cat1, s2 belongs to cat2 and d, the distance between...
ItemVariant const * other
bool includeMismatches
"Include failed matches (i.e. one 'match' is NULL) " "(default: false)" ;
Match< SourceRecord, SourceRecord > SourceMatch
bool symmetricMatch
"Produce symmetric matches (default: true):\n" "i.e. if (s1, s2, d) is reported, then so is (s2...
std::vector< SourceMatch > SourceMatchVector