| 
									
										
										
										
											2010-01-23 01:36:57 +08:00
										 |  |  | // These are currently broken
 | 
					
						
							| 
									
										
										
										
											2010-10-09 11:09:58 +08:00
										 |  |  | // Solve by parsing a namespace pose2SLAM::Values and making a Pose2SLAMValues class
 | 
					
						
							| 
									
										
										
										
											2010-01-23 01:36:57 +08:00
										 |  |  | // We also have to solve the shared pointer mess to avoid duplicate methods
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-10-09 11:09:58 +08:00
										 |  |  | class Pose2Values{ | 
					
						
							|  |  |  | 	Pose2Values(); | 
					
						
							| 
									
										
										
										
											2010-01-23 01:36:57 +08:00
										 |  |  | 	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; | 
					
						
							| 
									
										
										
										
											2010-10-09 11:09:58 +08:00
										 |  |  | 	double error(const Pose2Values& c) const; | 
					
						
							| 
									
										
										
										
											2010-01-23 01:36:57 +08:00
										 |  |  | 	size_t size() const; | 
					
						
							| 
									
										
										
										
											2010-10-09 11:09:58 +08:00
										 |  |  | 	GaussianFactor* linearize(const Pose2Values& config) const; | 
					
						
							| 
									
										
										
										
											2010-01-23 01:36:57 +08:00
										 |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class Pose2Graph{ | 
					
						
							|  |  |  | 	Pose2Graph(); | 
					
						
							|  |  |  | 	void print(string s) const; | 
					
						
							| 
									
										
										
										
											2010-10-09 11:09:58 +08:00
										 |  |  | 	GaussianFactorGraph* linearize_(const Pose2Values& config) const; | 
					
						
							| 
									
										
										
										
											2010-01-23 01:36:57 +08:00
										 |  |  | 	void push_back(Pose2Factor* factor); | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 |