24 #include <aspect/inifins/vision.h>
25 #include <aspect/inifins/vision_master.h>
26 #include <aspect/vision.h>
27 #include <core/threading/thread_finalizer.h>
40 : AspectIniFin(
"VisionAspect")
42 master_inifin_ = master_inifin;
49 vision_thread = dynamic_cast<VisionAspect *>(thread);
50 if (vision_thread == 0) {
52 "VisionAspect, but RTTI says it "
61 "continuous mode but thread does not",
66 throw CannotInitializeThreadException(
"Vision thread '%s' operates in "
67 "cyclic mode but thread does not "
68 "operate in wait-for-wakeup mode.",
74 }
catch (DependencyViolationException &e) {
75 CannotInitializeThreadException ce(
"Dependency violation for "
76 "VisionAspect detected");
85 VisionAspect *vision_thread;
86 vision_thread = dynamic_cast<VisionAspect *>(thread);
87 if (vision_thread == 0) {
103 VisionAspect *vision_thread;
104 vision_thread = dynamic_cast<VisionAspect *>(thread);
105 if (vision_thread == 0) {
107 "VisionAspect, but RTTI says it "
114 }
catch (DependencyViolationException &e) {
115 CannotFinalizeThreadException ce(
"Dependency violation for "
116 "VisionAspect detected");