Jafar
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Storage.hpp
00001 /* $Id$ */
00002 
00003 #ifndef _SPAFDB_STORAGE_HPP_
00004 
00005 #include <list>
00006 #include <vector>
00007 
00008 #include <geom/Declarations.hpp>
00009 
00010 namespace jafar {
00011   namespace spaf {
00012     class Feature;
00013     class FeaturesBag;
00014   }
00015   namespace spafgraph {
00016     class EdgeProximity;
00017     class Node;
00018     class Graph;
00019   }
00020   namespace spafdb {
00021     class SpafDB;
00022     class Parameter;
00028     class Storage {
00029       friend class SpafDB;
00030       private:
00031         Storage(SpafDB*, const Parameter* param );
00032         ~Storage();
00033       public:
00034         const spafgraph::Graph* graph() const;
00035         const spaf::FeaturesBag& features() const;
00036         spafgraph::Node* node( unsigned int _id );
00037         spafgraph::Node* insertFeature(spaf::Feature* f);
00041         void removeFeature( spaf::Feature* f);
00042         void removeFeature( unsigned int _id );
00043         void insertEdgeProximities(const std::vector<const spafgraph::EdgeProximity*>& );
00044       public:
00045         std::list<spafgraph::Node*> objectsIn( const geom::BoundingBox<3>&) const;
00046         std::list<const spafgraph::EdgeProximity*> proximitiesClose( double distance, double distanceSigma, double angle, double angleSigma) const;
00047       private:
00048         struct Private;
00049         Private* const d;
00050     };
00051   }
00052 }
00053 
00054 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Wed Oct 15 2014 00:37:28 for Jafar by doxygen 1.7.6.1
LAAS-CNRS