24 #include <aspect/inifins/vision_master.h>
25 #include <aspect/vision_master.h>
26 #include <core/threading/thread_finalizer.h>
27 #include <fvutils/base/vision_master.h>
45 vision_master_thread = dynamic_cast<VisionMasterAspect *>(thread);
46 if (vision_master_thread == 0) {
48 "VisionMasterAspect, but RTTI says it "
54 vision_dependency_.add(vision_master_thread);
55 }
catch (DependencyViolationException &e) {
56 CannotInitializeThreadException ce(
"Dependency violation for "
57 "VisionMasterAspect detected");
66 VisionMasterAspect *vision_master_thread;
67 vision_master_thread = dynamic_cast<VisionMasterAspect *>(thread);
68 if (vision_master_thread == 0) {
72 if (!vision_dependency_.can_remove(vision_master_thread)) {
84 VisionMasterAspect *vision_master_thread;
85 vision_master_thread = dynamic_cast<VisionMasterAspect *>(thread);
86 if (vision_master_thread == 0) {
88 "VisionMasterAspect, but RTTI says it "
94 vision_dependency_.remove(vision_master_thread);
95 }
catch (DependencyViolationException &e) {
96 CannotFinalizeThreadException ce(
"Dependency violation for "
97 "VisionMasterAspect detected");
109 return vision_dependency_.provider()->vision_master();
118 vision_dependency_.add(thread);
127 vision_dependency_.remove(thread);
137 return vision_dependency_.can_remove(thread);