61 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C
		
	
	
		
		
			
		
	
	
			61 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C
		
	
	
|  | // These are currently broken
 | ||
|  | // Solve by parsing a namespace pose2SLAM::Config and making a Pose2SLAMConfig class
 | ||
|  | // We also have to solve the shared pointer mess to avoid duplicate methods
 | ||
|  | 
 | ||
|  | class Point2Prior { | ||
|  |   Point2Prior(Vector mu, double sigma, string key); | ||
|  |   Vector error_vector(const VectorConfig& c) const; | ||
|  |   GaussianFactor* linearize(const VectorConfig& c) const; | ||
|  |   double sigma(); | ||
|  |   Vector measurement(); | ||
|  |   double error(const VectorConfig& c) const; | ||
|  |   void print(string s) const; | ||
|  | }; | ||
|  | 
 | ||
|  | class Simulated2DOdometry { | ||
|  |   Simulated2DOdometry(Vector odo, double sigma, string key, string key2); | ||
|  |   Vector error_vector(const VectorConfig& c) const; | ||
|  |   GaussianFactor* linearize(const VectorConfig& c) const; | ||
|  |   double sigma(); | ||
|  |   Vector measurement(); | ||
|  |   double error(const VectorConfig& c) const; | ||
|  |   void print(string s) const; | ||
|  | }; | ||
|  | 
 | ||
|  | class Simulated2DMeasurement { | ||
|  |   Simulated2DMeasurement(Vector odo, double sigma, string key, string key2); | ||
|  |   Vector error_vector(const VectorConfig& c) const; | ||
|  |   GaussianFactor* linearize(const VectorConfig& c) const; | ||
|  |   double sigma(); | ||
|  |   Vector measurement(); | ||
|  |   double error(const VectorConfig& c) const; | ||
|  |   void print(string s) const; | ||
|  | }; | ||
|  | 
 | ||
|  | class Pose2Config{ | ||
|  | 	Pose2Config(); | ||
|  | 	Pose2 get(string key) const; | ||
|  | 	void insert(string name, const Pose2& val); | ||
|  |     void print(string s) const; | ||
|  |     void clear(); | ||
|  |     int size(); | ||
|  | }; | ||
|  | 
 | ||
|  | class Pose2Factor { | ||
|  | 	Pose2Factor(string key1, string key2, | ||
|  | 			const Pose2& measured, Matrix measurement_covariance); | ||
|  | 	void print(string name) const; | ||
|  | 	double error(const Pose2Config& c) const; | ||
|  | 	size_t size() const; | ||
|  | 	GaussianFactor* linearize(const Pose2Config& config) const; | ||
|  | }; | ||
|  | 
 | ||
|  | class Pose2Graph{ | ||
|  | 	Pose2Graph(); | ||
|  | 	void print(string s) const; | ||
|  | 	GaussianFactorGraph* linearize_(const Pose2Config& config) const; | ||
|  | 	void push_back(Pose2Factor* factor); | ||
|  | }; | ||
|  | 
 | ||
|  | 
 |