Segment.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <mutex>
4 #include <string>
5 
7 
14 
15 namespace armarx::armem::arondto
16 {
17  class ObjectClass;
18 }
19 
21 {
22 
24  {
25  public:
27  virtual ~Segment() override;
28 
29 
31  const std::string& prefix = "") override;
32  void init() override;
33  void connect(viz::Client arviz);
34 
35 
36  void loadByObjectFinder(const std::string& objectsPackage);
37  void loadByObjectFinder(const ObjectFinder& finder);
38  void loadByObjectFinder();
39 
41 
42  void visualizeClass(const MemoryID& entityID, bool showAABB = true, bool showOOBB = true);
43 
44 
45  arondto::ObjectClass objectClassFromInfo(const ObjectInfo& info);
46 
47 
48  private:
49  ObjectFinder objectFinder;
50 
51  viz::Client arviz;
52  FloorVis floorVis;
53 
54  struct Properties
55  {
56  std::string objectsPackage = ObjectFinder::DefaultObjectsPackageName;
57  bool loadFromObjectsPackage = true;
58  };
59 
60  Properties p;
61 
62 
63  public:
64  struct RemoteGui
65  {
67 
68  struct Data
69  {
71 
75 
76  void setup(const Segment& segment);
77  void update(Segment& segment);
78 
79  bool rebuild = false;
80  };
81 
83 
84  struct Visu
85  {
87 
88  std::vector<MemoryID> showOptionsIndex;
91 
92  void setup(const Segment& segment);
93  void update(Segment& segment);
94  };
95 
97 
98  void setup(const Segment& segment);
99  void update(Segment& segment);
100  };
101  };
102 
103 } // namespace armarx::armem::server::obj::clazz
Client.h
armarx::armem::server::obj::clazz::Segment::reloadObjectClassesByObjectFinder
void reloadObjectClassesByObjectFinder()
Definition: Segment.cpp:65
armarx::armem::server::obj::clazz::Segment::RemoteGui::Visu::showComboBox
armarx::RemoteGui::Client::ComboBox showComboBox
Definition: Segment.h:89
SpecializedSegment.h
armarx::armem::server::obj::clazz::Segment::RemoteGui::Visu
Definition: Segment.h:84
armarx::armem::server::obj::clazz::Segment::RemoteGui::visu
Visu visu
Definition: Segment.h:96
armarx::armem::server::obj::clazz::Segment::RemoteGui::update
void update(Segment &segment)
Definition: Segment.cpp:275
armarx::ObjectFinder::DefaultObjectsPackageName
static const std::string DefaultObjectsPackageName
Definition: ObjectFinder.h:26
armarx::armem::server::segment::SpecializedCoreSegment
A base class for core segments.
Definition: SpecializedCoreSegment.h:19
armarx::armem::server::obj::clazz::Segment::RemoteGui::setup
void setup(const Segment &segment)
Definition: Segment.cpp:259
armarx::armem::server::obj::clazz
Definition: FloorVis.cpp:9
armarx::armem::server::obj::clazz::Segment::RemoteGui::Data::group
armarx::RemoteGui::Client::GroupBox group
Definition: Segment.h:70
armarx::armem::server::MemoryToIceAdapter
Helps connecting a Memory server to the Ice interface.
Definition: MemoryToIceAdapter.h:19
armarx::armem::server::obj::clazz::Segment::RemoteGui::Visu::group
armarx::RemoteGui::Client::GroupBox group
Definition: Segment.h:86
armarx::armem::server::obj::clazz::Segment::RemoteGui::group
armarx::RemoteGui::Client::GroupBox group
Definition: Segment.h:66
armarx::armem::server::obj::clazz::Segment::RemoteGui::Data::setup
void setup(const Segment &segment)
Definition: Segment.cpp:282
armarx::armem::arondto
Definition: aron_conversions.h:17
armarx::armem::server::obj::clazz::Segment::init
void init() override
Definition: Segment.cpp:53
armarx::armem::server::obj::clazz::Segment::RemoteGui::Data::reloadButton
armarx::RemoteGui::Client::Button reloadButton
Definition: Segment.h:72
armarx::armem::server::obj::clazz::Segment::RemoteGui::Data::infiniteHistory
armarx::RemoteGui::Client::CheckBox infiniteHistory
Definition: Segment.h:74
armarx::armem::server::obj::clazz::Segment::loadByObjectFinder
void loadByObjectFinder()
Definition: Segment.cpp:103
armarx::armem::server::obj::clazz::Segment::RemoteGui::Data
Definition: Segment.h:68
armarx::ObjectFinder
Used to find objects in the ArmarX objects repository [1] (formerly [2]).
Definition: ObjectFinder.h:22
armarx::armem::server::obj::clazz::FloorVis
Definition: FloorVis.h:21
armarx::armem::server::obj::clazz::Segment
Definition: Segment.h:23
armarx::armem::MemoryID
A memory ID.
Definition: MemoryID.h:47
armarx::armem::server::obj::clazz::Segment::RemoteGui::Visu::showButton
armarx::RemoteGui::Client::Button showButton
Definition: Segment.h:90
armarx::armem::server::obj::clazz::Segment::RemoteGui::data
Data data
Definition: Segment.h:82
ObjectID.h
armarx::armem::server::obj::clazz::Segment::RemoteGui::Visu::showOptionsIndex
std::vector< MemoryID > showOptionsIndex
Definition: Segment.h:88
armarx::RemoteGui::Client::GroupBox
Definition: Widgets.h:193
armarx::armem::server::obj::clazz::Segment::RemoteGui::Data::maxHistorySize
armarx::RemoteGui::Client::IntSpinBox maxHistorySize
Definition: Segment.h:73
armarx::armem::server::obj::clazz::Segment::defineProperties
void defineProperties(armarx::PropertyDefinitionsPtr defs, const std::string &prefix="") override
Definition: Segment.cpp:38
armarx::RemoteGui::Client::ComboBox
Definition: Widgets.h:50
armarx::armem::server::obj::clazz::Segment::RemoteGui::Data::update
void update(Segment &segment)
Definition: Segment.cpp:307
memory_definitions.h
armarx::armem::server::obj::clazz::Segment::~Segment
virtual ~Segment() override
Definition: Segment.cpp:33
armarx::armem::server::obj::clazz::Segment::RemoteGui::Visu::update
void update(Segment &segment)
Definition: Segment.cpp:365
armarx::armem::server::obj::clazz::Segment::RemoteGui
Definition: Segment.h:64
armarx::armem::server::segment::detail::SegmentBase< server::wm::CoreSegment >::iceMemory
MemoryToIceAdapter & iceMemory
Definition: SpecializedSegment.h:58
IceUtil::Handle< class PropertyDefinitionContainer >
armarx::RemoteGui::Client::IntSpinBox
Definition: Widgets.h:69
armarx::RemoteGui::Client::CheckBox
Definition: Widgets.h:129
FloorVis.h
armarx::armem::server::obj::clazz::Segment::connect
void connect(viz::Client arviz)
Definition: Segment.cpp:80
Widgets.h
armarx::RemoteGui::Client::Button
Definition: Widgets.h:120
armarx::armem::server::obj::clazz::Segment::visualizeClass
void visualizeClass(const MemoryID &entityID, bool showAABB=true, bool showOOBB=true)
Definition: Segment.cpp:142
armarx::armem::server::obj::clazz::Segment::objectClassFromInfo
arondto::ObjectClass objectClassFromInfo(const ObjectInfo &info)
Definition: Segment.cpp:206
armarx::viz::Client
Definition: Client.h:117
armarx::armem::server::obj::clazz::Segment::RemoteGui::Visu::setup
void setup(const Segment &segment)
Definition: Segment.cpp:332
armarx::armem::server::obj::clazz::Segment::RemoteGui::Data::rebuild
bool rebuild
Definition: Segment.h:79
armarx::ObjectInfo
Accessor for the object files.
Definition: ObjectInfo.h:36
ObjectFinder.h
armarx::armem::server::obj::clazz::Segment::Segment
Segment(armem::server::MemoryToIceAdapter &iceMemory)
Definition: Segment.cpp:25