LSSTApplications  8.0.0.0+107,8.0.0.1+13,9.1+18,9.2,master-g084aeec0a4,master-g0aced2eed8+6,master-g15627eb03c,master-g28afc54ef9,master-g3391ba5ea0,master-g3d0fb8ae5f,master-g4432ae2e89+36,master-g5c3c32f3ec+17,master-g60f1e072bb+1,master-g6a3ac32d1b,master-g76a88a4307+1,master-g7bce1f4e06+57,master-g8ff4092549+31,master-g98e65bf68e,master-ga6b77976b1+53,master-gae20e2b580+3,master-gb584cd3397+53,master-gc5448b162b+1,master-gc54cf9771d,master-gc69578ece6+1,master-gcbf758c456+22,master-gcec1da163f+63,master-gcf15f11bcc,master-gd167108223,master-gf44c96c709
LSSTDataManagementBasePackage
Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Attributes | List of all members
lsst::meas::base::FlagHandler Class Reference

#include <FlagHandler.h>

Public Types

enum  { FAILURE =0 }
 

Public Member Functions

 FlagHandler ()
 
 FlagHandler (afw::table::SubSchema const &s, FlagDefinition const *begin, FlagDefinition const *end)
 
FlagDefinition getDefinition (int i) const
 
bool getValue (afw::table::BaseRecord const &record, int i) const
 
void setValue (afw::table::BaseRecord &record, int i, bool value) const
 
void handleFailure (afw::table::BaseRecord &record, MeasurementError const *error=NULL) const
 

Static Public Member Functions

static FlagHandler addFields (afw::table::Schema &schema, std::string const &prefix, FlagDefinition const *begin, FlagDefinition const *end)
 

Private Types

typedef std::vector< std::pair
< FlagDefinition,
afw::table::Key
< afw::table::Flag > > > 
Vector
 

Private Attributes

Vector _vector
 

Detailed Description

Definition at line 46 of file FlagHandler.h.

Member Typedef Documentation

typedef std::vector< std::pair<FlagDefinition, afw::table::Key<afw::table::Flag> > > lsst::meas::base::FlagHandler::Vector
private

Definition at line 80 of file FlagHandler.h.

Member Enumeration Documentation

anonymous enum
Enumerator
FAILURE 

Definition at line 49 of file FlagHandler.h.

Constructor & Destructor Documentation

lsst::meas::base::FlagHandler::FlagHandler ( )
inline

Definition at line 51 of file FlagHandler.h.

51 {}
lsst::meas::base::FlagHandler::FlagHandler ( afw::table::SubSchema const &  s,
FlagDefinition const *  begin,
FlagDefinition const *  end 
)

Definition at line 47 of file FlagHandler.cc.

51  {
52  _vector.reserve(end - begin);
53  for (FlagDefinition const * iter = begin; iter != end; ++iter) {
54  afw::table::Key<afw::table::Flag> key = s[iter->name];
55  _vector.push_back(std::make_pair(*iter, key));
56  }
57 }
int iter

Member Function Documentation

FlagHandler lsst::meas::base::FlagHandler::addFields ( afw::table::Schema schema,
std::string const &  prefix,
FlagDefinition const *  begin,
FlagDefinition const *  end 
)
static

Definition at line 28 of file FlagHandler.cc.

33  {
34  FlagHandler r;
35  r._vector.reserve(end - begin);
36  for (FlagDefinition const * iter = begin; iter != end; ++iter) {
37  r._vector.push_back(
38  std::make_pair(
39  *iter,
40  schema.addField<afw::table::Flag>(schema.join(prefix, iter->name), iter->doc)
41  )
42  );
43  }
44  return r;
45 }
int iter
tbl::Schema schema
Definition: CoaddPsf.cc:324
FlagDefinition lsst::meas::base::FlagHandler::getDefinition ( int  i) const
inline

Definition at line 66 of file FlagHandler.h.

66 { return _vector[i].first; }
bool lsst::meas::base::FlagHandler::getValue ( afw::table::BaseRecord const &  record,
int  i 
) const
inline

Definition at line 68 of file FlagHandler.h.

68  {
69  return record.get(_vector[i].second);
70  }
afw::table::SourceRecord * record
void lsst::meas::base::FlagHandler::handleFailure ( afw::table::BaseRecord record,
MeasurementError const *  error = NULL 
) const

Definition at line 59 of file FlagHandler.cc.

59  {
60  record.set(_vector[0].second, true);
61  if (error) {
62  record.set(_vector[error->getFlagBit()].second, true);
63  }
64 }
afw::table::SourceRecord * record
void lsst::meas::base::FlagHandler::setValue ( afw::table::BaseRecord record,
int  i,
bool  value 
) const
inline

Definition at line 72 of file FlagHandler.h.

72  {
73  record.set(_vector[i].second, value);
74  }
afw::table::SourceRecord * record

Member Data Documentation

Vector lsst::meas::base::FlagHandler::_vector
private

Definition at line 82 of file FlagHandler.h.


The documentation for this class was generated from the following files: