Jafar
|
00001 00009 #ifndef DESCRIPTORABSTRACT_H_ 00010 #define DESCRIPTORABSTRACT_H_ 00011 00012 #include <boost/smart_ptr.hpp> 00013 00014 #include "jmath/jblas.hpp" 00015 #include "image/oimstream.hpp" 00016 00017 #include "rtslam/rtSlam.hpp" 00018 //#include "rtslam/appearanceAbstract.hpp" 00019 #include "rtslam/appearanceImage.hpp" 00020 00021 namespace jafar { 00022 00023 namespace rtslam { 00024 00025 class DescriptorAbstract { 00026 00027 00028 public: 00029 00030 DescriptorAbstract(); 00031 virtual ~DescriptorAbstract(); 00032 00036 virtual bool addObservation(const observation_ptr_t & obsPtr) = 0; 00040 virtual bool predictAppearance(const observation_ptr_t & obsPtr) = 0; 00046 virtual bool isPredictionValid(const observation_ptr_t & obsPtr) = 0; 00047 00048 virtual std::string categoryName() const { 00049 return "DESCRIPTOR"; 00050 } 00051 00052 virtual void desc_text(std::ostream& os) const {} 00053 virtual void desc_image(image::oimstream& os) const {} 00054 00055 }; 00056 00057 00058 std::ostream& operator <<(std::ostream & s, DescriptorAbstract const & desc); 00059 image::oimstream& operator <<(image::oimstream & s, DescriptorAbstract const & desc); 00060 00061 00062 class DescriptorFactoryAbstract 00063 { 00064 public: 00065 virtual DescriptorAbstract *createDescriptor() = 0; 00066 }; 00067 00068 } 00069 } 00070 00071 #endif /* DESCRIPTORABSTRACT_H_ */
Generated on Wed Oct 15 2014 00:37:26 for Jafar by doxygen 1.7.6.1 |