Berkeley SfM
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
bsfm::Observation Class Reference

#include <observation.h>

Public Types

typedef std::shared_ptr< ObservationPtr
 
typedef std::shared_ptr< const ObservationConstPtr
 

Public Member Functions

 ~Observation ()
 
std::shared_ptr< ViewGetView () const
 
std::shared_ptr< LandmarkGetLandmark () const
 
void SetMatchedLandmark (LandmarkIndex landmark_index)
 
bool IsMatched () const
 
void SetIncorporatedLandmark (LandmarkIndex landmark_index)
 
bool IsIncorporated () const
 
const ::bsfm::FeatureFeature () const
 
const ::bsfm::DescriptorDescriptor () const
 

Static Public Member Functions

static Observation::Ptr Create (const std::shared_ptr< View > &view_ptr, const ::bsfm::Feature &feature, const ::bsfm::Descriptor &descriptor)
 

Private Member Functions

 Observation ()
 
 Observation (const std::shared_ptr< View > &view_ptr, const ::bsfm::Feature &feature, const ::bsfm::Descriptor &descriptor)
 

Private Attributes

ViewIndex view_index_
 
LandmarkIndex landmark_index_
 
bool is_matched_
 
bool is_incorporated_
 
::bsfm::Feature feature_
 
::bsfm::Descriptor descriptor_
 

Detailed Description

Definition at line 63 of file observation.h.

Member Typedef Documentation

typedef std::shared_ptr<const Observation> bsfm::Observation::ConstPtr

Definition at line 66 of file observation.h.

typedef std::shared_ptr<Observation> bsfm::Observation::Ptr

Definition at line 65 of file observation.h.

Constructor & Destructor Documentation

bsfm::Observation::~Observation ( )

Definition at line 54 of file observation.cpp.

54 {}
bsfm::Observation::Observation ( )
private
bsfm::Observation::Observation ( const std::shared_ptr< View > &  view_ptr,
const ::bsfm::Feature feature,
const ::bsfm::Descriptor descriptor 
)
private

Member Function Documentation

Observation::Ptr bsfm::Observation::Create ( const std::shared_ptr< View > &  view_ptr,
const ::bsfm::Feature feature,
const ::bsfm::Descriptor descriptor 
)
static

Definition at line 46 of file observation.cpp.

48  {
49  Observation::Ptr observation(new Observation(view_ptr, feature, descriptor));
50  view_ptr->AddObservation(observation);
51  return observation;
52 }
std::shared_ptr< Observation > Ptr
Definition: observation.h:65
const ::bsfm::Descriptor & bsfm::Observation::Descriptor ( ) const

Definition at line 115 of file observation.cpp.

115  {
116  return descriptor_;
117 }
::bsfm::Descriptor descriptor_
Definition: observation.h:138
const ::bsfm::Feature & bsfm::Observation::Feature ( ) const

Definition at line 110 of file observation.cpp.

110  {
111  return feature_;
112 }
::bsfm::Feature feature_
Definition: observation.h:135
Landmark::Ptr bsfm::Observation::GetLandmark ( ) const

Definition at line 70 of file observation.cpp.

70  {
72  LOG(WARNING) << "Landmark index is invalid. Returning a null pointer.";
73  return Landmark::Ptr();
74  }
75 
77  CHECK_NOTNULL(landmark.get());
78  return landmark;
79 }
static Landmark::Ptr GetLandmark(LandmarkIndex landmark_index)
Definition: landmark.cpp:59
LandmarkIndex landmark_index_
Definition: observation.h:123
static constexpr LandmarkIndex kInvalidLandmark
Definition: types.h:66
std::shared_ptr< Landmark > Ptr
Definition: landmark.h:66
std::shared_ptr< View > bsfm::Observation::GetView ( ) const

Definition at line 57 of file observation.cpp.

57  {
58  if (view_index_ == kInvalidView) {
59  LOG(WARNING) << "View index is invalid. Returning a null pointer.";
60  return View::Ptr();
61  }
62 
64  CHECK_NOTNULL(view.get());
65  return view;
66 }
ViewIndex view_index_
Definition: observation.h:119
static constexpr ViewIndex kInvalidView
Definition: types.h:65
static View::Ptr GetView(ViewIndex view_index)
Definition: view.cpp:60
std::shared_ptr< View > Ptr
Definition: view.h:66
bool bsfm::Observation::IsIncorporated ( ) const

Definition at line 105 of file observation.cpp.

105  {
106  return is_incorporated_;
107 }
bool bsfm::Observation::IsMatched ( ) const

Definition at line 91 of file observation.cpp.

91  {
92  return is_matched_;
93 }
void bsfm::Observation::SetIncorporatedLandmark ( LandmarkIndex  landmark_index)

Definition at line 97 of file observation.cpp.

97  {
98  CHECK_NE(kInvalidLandmark, landmark_index);
99  landmark_index_ = landmark_index;
100  is_matched_ = true;
101  is_incorporated_ = true;
102 }
LandmarkIndex landmark_index_
Definition: observation.h:123
static constexpr LandmarkIndex kInvalidLandmark
Definition: types.h:66
void bsfm::Observation::SetMatchedLandmark ( LandmarkIndex  landmark_index)

Definition at line 83 of file observation.cpp.

83  {
84  CHECK_NE(kInvalidLandmark, landmark_index);
85  landmark_index_ = landmark_index;
86  is_matched_ = true;
87 }
LandmarkIndex landmark_index_
Definition: observation.h:123
static constexpr LandmarkIndex kInvalidLandmark
Definition: types.h:66

Member Data Documentation

::bsfm::Descriptor bsfm::Observation::descriptor_
private

Definition at line 138 of file observation.h.

::bsfm::Feature bsfm::Observation::feature_
private

Definition at line 135 of file observation.h.

bool bsfm::Observation::is_incorporated_
private

Definition at line 132 of file observation.h.

bool bsfm::Observation::is_matched_
private

Definition at line 127 of file observation.h.

LandmarkIndex bsfm::Observation::landmark_index_
private

Definition at line 123 of file observation.h.

ViewIndex bsfm::Observation::view_index_
private

Definition at line 119 of file observation.h.


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