00001 #ifndef CAMERAMODEL_HPP_ 00002 #define CAMERAMODEL_HPP_ 00003 00004 #include <boost/shared_ptr.hpp> 00005 #include <string> 00006 #include "../common_defs.hpp" 00007 #include "virtual_camera/VirtualCameraParameters.h" 00008 00009 00010 namespace virtual_camera { 00011 00012 00019 class CameraModel { 00020 public: 00021 virtual ~CameraModel() {} 00022 00027 virtual std::string getIndentifier() = 0; 00028 00029 00036 virtual TableV3Ptr createPointCloud( 00037 const VirtualCameraParametersPtr & params) = 0; 00038 00039 }; 00040 00041 typedef boost::shared_ptr<CameraModel> CameraModelPtr; 00042 } 00043 00044 00045 #endif /* CAMERAMODEL_HPP_ */