3D Repo Bouncer  1.4
repo_spatial_partitioner_abstract.h
1 
18 #pragma once
19 
20 #include "../../../lib/repo_property_tree.h"
21 #include "../../../lib/datastructure/repo_structs.h"
22 #include "../../../core/model/collection/repo_scene.h"
23 
24 namespace repo{
25  namespace manipulator{
26  namespace modelutility{
28  {
29  public:
38  const repo::core::model::RepoScene *scene,
39  const uint32_t &maxDepth);
40  virtual ~AbstractSpatialPartitioner();
41 
46  virtual std::shared_ptr<repo_partitioning_tree_t>
47  partitionScene() = 0;
48 
55 
56  protected:
57  const repo::core::model::RepoScene *scene;
58  const uint32_t maxDepth;
60 
61  repo::lib::PropertyTree generatePropertyTreeForPartitioningInternal(
62  const std::shared_ptr<repo_partitioning_tree_t> &spTree) const;
63  };
64  }
65  }
66 }
AbstractSpatialPartitioner(const repo::core::model::RepoScene *scene, const uint32_t &maxDepth)
Definition: repo_spatial_partitioner_abstract.cpp:22
Definition: repo_connection_pool_mongo.h:32
Definition: repo_property_tree.h:29
Definition: repo_scene.h:44
virtual std::shared_ptr< repo_partitioning_tree_t > partitionScene()=0
virtual repo::lib::PropertyTree generatePropertyTreeForPartitioning()
Definition: repo_spatial_partitioner_abstract.cpp:36
Definition: repo_spatial_partitioner_abstract.h:27
GraphType
Definition: repo_scene.h:75