Class Vertex

Inheritance Relationships

Base Type

Class Documentation

class vi_map::Vertex : public pose_graph::Vertex

Public Types

typedef std::vector<backend::ResourceTypeToIdsMap> FrameResourceMap

Public Functions

Vertex(const pose_graph::VertexId &vertex_id, const Eigen::Matrix<double, 6, 1> &imu_ba_bw, const Eigen::Matrix2Xd &img_points_distorted, const Eigen::VectorXd &uncertainties, const aslam::VisualFrame::DescriptorsT &descriptors, const Eigen::VectorXd &descriptor_scales, const std::vector<LandmarkId> &observed_landmark_ids, const vi_map::MissionId &mission_id, const aslam::FrameId &frame_id, int64_t frame_timestamp, const aslam::NCamera::Ptr cameras)
Vertex(const pose_graph::VertexId &vertex_id, const Eigen::Matrix<double, 6, 1> &imu_ba_bw, const Eigen::Matrix2Xd &img_points_distorted, const Eigen::VectorXd &uncertainties, const aslam::VisualFrame::DescriptorsT &descriptors, const std::vector<LandmarkId> &observed_landmark_ids, const vi_map::MissionId &mission_id, const aslam::FrameId &frame_id, int64_t frame_timestamp, const aslam::NCamera::Ptr cameras)
Vertex(const pose_graph::VertexId &vertex_id, const Eigen::Matrix<double, 6, 1> &imu_ba_bw, const aslam::VisualNFrame::Ptr visual_n_frame, const std::vector<std::vector<LandmarkId>> &n_frame_landmarks, const vi_map::MissionId &mission_id)
Vertex(const pose_graph::VertexId &vertex_id, const aslam::VisualNFrame::Ptr visual_n_frame, const vi_map::MissionId &mission_id)
explicit Vertex(const aslam::NCamera::Ptr cameras)
Vertex *cloneWithVisualNFrame(const aslam::NCamera::Ptr ncamera_for_cloned_vertex) const
Vertex *cloneWithoutVisualNFrame() const
Vertex()
inline virtual ~Vertex()
Vertex(const Vertex&) = delete
Vertex &operator=(const Vertex&) = delete
virtual const pose_graph::VertexId &id() const
void setId(const pose_graph::VertexId &id)
void set_T_M_I(const pose::Transformation &T_M_I)
void set_p_M_I(const Eigen::Vector3d &p_M_I)
void set_q_M_I(const Eigen::Quaterniond &q_M_I)
void set_v_M(const Eigen::Vector3d &v_M)
void setAccelBias(const Eigen::Vector3d &accel_bias)
void setGyroBias(const Eigen::Vector3d &gyro_bias)
virtual bool addIncomingEdge(const pose_graph::EdgeId &edge)
virtual bool addOutgoingEdge(const pose_graph::EdgeId &edge)
virtual void getOutgoingEdges(pose_graph::EdgeIdSet *edges) const
virtual void getIncomingEdges(pose_graph::EdgeIdSet *edges) const
virtual void getAllEdges(pose_graph::EdgeIdSet *edges) const
virtual bool hasIncomingEdges() const
virtual bool hasOutgoingEdges() const
size_t numOutgoingEdges() const
virtual void removeIncomingEdge(const pose_graph::EdgeId &edge_id)
virtual void removeOutgoingEdge(const pose_graph::EdgeId &edge_id)
double *get_q_M_I_Mutable()
double *get_p_M_I_Mutable()
double *get_v_M_Mutable()
double *getAccelBiasMutable()
double *getGyroBiasMutable()
const pose::Transformation &get_T_M_I() const
const Eigen::Quaterniond &get_q_M_I() const
const Eigen::Vector3d &get_p_M_I() const
const Eigen::Vector3d &get_v_M() const
const Eigen::Vector3d &getAccelBias() const
const Eigen::Vector3d &getGyroBias() const
const LandmarkId &getObservedLandmarkId(unsigned int frame_idx, int keypoint_idx) const
const LandmarkId &getObservedLandmarkId(const KeypointIdentifier &keypoint_id) const
void setObservedLandmarkId(const KeypointIdentifier &keypoint_id, const LandmarkId &landmark_id)
void setObservedLandmarkId(unsigned int frame_idx, int keypoint_idx, const LandmarkId &landmark_id)
size_t observedLandmarkIdsSize(unsigned int frame_idx) const
int numValidObservedLandmarkIds(unsigned int frame_idx) const
int numValidObservedLandmarkIdsInAllFrames() const
void getFrameObservedLandmarkIds(unsigned int frame_idx, LandmarkIdList *landmark_ids) const
const LandmarkIdList &getFrameObservedLandmarkIds(unsigned int frame_idx) const
void getAllObservedLandmarkIds(LandmarkIdList *landmark_ids) const
void getAllObservedLandmarkIds(std::vector<LandmarkIdList> *landmark_ids) const
size_t getNumLandmarkObservations(const LandmarkId &landmark_id) const
void forEachKeypoint(const std::function<void(const KeypointIdentifier&)> &action) const
void forEachFrame(const std::function<void(const unsigned int frame_idx, const aslam::VisualFrame &frame)> &action) const
inline const vi_map::MissionId &getMissionId() const
inline void setMissionId(const vi_map::MissionId &mission_id)
inline bool hasVisualNFrame() const
inline aslam::VisualNFrame &getVisualNFrame()
inline const aslam::VisualNFrame &getVisualNFrame() const
inline aslam::VisualNFrame::Ptr &getVisualNFrameShared()
inline aslam::VisualNFrame::ConstPtr getVisualNFrameShared() const
inline size_t numFrames() const
inline bool isVisualFrameSet(unsigned int frame_idx) const
inline bool isVisualFrameValid(unsigned int frame_idx) const
inline aslam::VisualFrame &getVisualFrame(unsigned int frame_idx)
inline aslam::VisualFrame::Ptr getVisualFrameShared(unsigned int frame_idx)
inline aslam::VisualFrame::Ptr getVisualFrameShared(aslam::FrameId frame_id)
inline unsigned int getVisualFrameIndex(aslam::FrameId frame_id) const
inline const aslam::VisualFrame &getVisualFrame(unsigned int frame_idx) const
inline const aslam::VisualFrame::ConstPtr getVisualFrameShared(unsigned int frame_idx) const
inline aslam::NCamera::ConstPtr getNCameras() const
inline aslam::Camera::ConstPtr getCamera(unsigned int frame_idx) const
inline aslam::Camera::Ptr getCamera(unsigned int frame_idx)
inline void setCamera(unsigned int frame_idx, const aslam::Camera::Ptr &camera)
inline void setNCameras(const aslam::NCamera::Ptr &n_cameras)
inline LandmarkStore &getLandmarks()
inline const LandmarkStore &getLandmarks() const
void getStoredLandmarkIdList(LandmarkIdList *landmark_id_list) const
bool hasStoredLandmark(const LandmarkId &landmark_id) const
pose::Position3D getLandmark_p_LM_fi(const LandmarkId &landmark_id) const
void setLandmark_LM_p_fi(const vi_map::LandmarkId &landmark_id, const Eigen::Vector3d &LM_p_fi)
inline void setLandmarks(const LandmarkStore &landmark_store)
void setFrameAndLandmarkObservations(aslam::VisualNFrame::Ptr visual_n_frame, const std::vector<std::vector<LandmarkId>> &img_landmarks)
void resetObservedLandmarkIdsToInvalid()
inline void forEachUnassociatedKeypoint(const unsigned int frame_idx, const std::function<void(const int keypoint_index)> &action) const
inline void getUnassociatedKeypoints(const unsigned int frame_idx, std::vector<int> *result) const
bool isFrameIndexValid(unsigned int frame_idx) const
bool areFrameAndKeypointIndicesValid(unsigned int frame_idx, int keypoint_idx) const
void checkConsistencyOfVisualObservationContainers() const
const FrameResourceMap &getFrameResourceMap() const
void setFrameResourceMap(const FrameResourceMap &frame_resource_map)
bool hasFrameResourceOfType(const unsigned int frame_idx, const backend::ResourceType &type) const
bool hasFrameResourceWithId(const unsigned int frame_idx, const backend::ResourceId &resource_id) const
void getFrameResourceIdsOfType(const unsigned int frame_idx, const backend::ResourceType &type, backend::ResourceIdSet *resource_ids) const
size_t getNumFrameResourcesOfType(const unsigned int frame_idx, const backend::ResourceType &type) const
void addFrameResourceIdOfType(const unsigned int frame_idx, const backend::ResourceType &type, const backend::ResourceId &resource_id)
void deleteFrameResourceIdsOfType(const unsigned int frame_idx, const backend::ResourceType &resource_type)
void deleteAllFrameResourceInfo(const unsigned int frame_idx)
void deleteAllFrameResourceInfo()
void serialize(vi_map::proto::ViwlsVertex *proto) const
void deserialize(const pose_graph::VertexId &vertex_id, const vi_map::proto::ViwlsVertex &proto)
inline bool operator==(const Vertex &lhs) const
inline bool operator!=(const Vertex &lhs) const
inline bool isSameApartFromOutgoingEdges(const Vertex &lhs) const
void expandVisualObservationContainersIfNecessary()
size_t discardUntrackedObservations()
inline int64_t getMinTimestampNanoseconds() const
void updateIdInObservedLandmarkIdList(const LandmarkId &old_landmark_id, const LandmarkId &new_landmark_id)
void removeObservedLandmarkIdList(const LandmarkId &landmark_id)
size_t getNumAbsolute6DoFMeasurements() const
bool hasAbsolute6DoFMeasurements() const
const std::vector<Absolute6DoFMeasurement> &getAbsolute6DoFMeasurements() const
std::vector<Absolute6DoFMeasurement> &getAbsolute6DoFMeasurements()
void addAbsolute6DoFMeasurement(const Absolute6DoFMeasurement &measurement)

Public Members

Vertex

Friends

friend friend void addObservedLandmarkId (const LandmarkId &landmark_id, vi_map::Vertex *vertex_ptr)