DynExp
Highly flexible laboratory automation for dynamically changing experiments.
ImageViewerEvents.h
Go to the documentation of this file.
1 // This file is part of DynExp.
2 
9 #pragma once
10 
11 #include "stdafx.h"
12 #include "Module.h"
13 
15 {
16  class PauseImageCapturingEvent : public DynExp::InterModuleEvent<PauseImageCapturingEvent, bool>
17  {
18  public:
21 
22  private:
23  virtual void InvokeWithParamsChild(DynExp::ModuleInstance& Instance, EventListenersType::EventFunctionType EventFunc) const override;
24 
26  };
27 
28  class ImageCapturingPausedEvent : public DynExp::InterModuleEvent<ImageCapturingPausedEvent>
29  {
30  public:
33 
34  private:
35  virtual void InvokeWithParamsChild(DynExp::ModuleInstance& Instance, EventListenersType::EventFunctionType EventFunc) const override;
36  };
37 
38  class ResumeImageCapturingEvent : public DynExp::InterModuleEvent<ResumeImageCapturingEvent>
39  {
40  public:
43 
44  private:
45  virtual void InvokeWithParamsChild(DynExp::ModuleInstance& Instance, EventListenersType::EventFunctionType EventFunc) const override;
46  };
47 
48  class ImageCapturingResumedEvent : public DynExp::InterModuleEvent<ImageCapturingResumedEvent>
49  {
50  public:
53 
54  private:
55  virtual void InvokeWithParamsChild(DynExp::ModuleInstance& Instance, EventListenersType::EventFunctionType EventFunc) const override;
56  };
57 
58  class AutofocusEvent : public DynExp::InterModuleEvent<AutofocusEvent, bool>
59  {
60  public:
62  virtual ~AutofocusEvent() {}
63 
64  private:
65  virtual void InvokeWithParamsChild(DynExp::ModuleInstance& Instance, EventListenersType::EventFunctionType EventFunc) const override;
66 
68  };
69 
70  class FinishedAutofocusEvent : public DynExp::InterModuleEvent<FinishedAutofocusEvent, bool, double>
71  {
72  public:
75 
76  private:
77  virtual void InvokeWithParamsChild(DynExp::ModuleInstance& Instance, EventListenersType::EventFunctionType EventFunc) const override;
78 
79  const bool Success;
80  const double Voltage;
81  };
82 }
Implementation of DynExp module objects.
virtual void InvokeWithParamsChild(DynExp::ModuleInstance &Instance, EventListenersType::EventFunctionType EventFunc) const override
AutofocusEvent(bool ResetImageTransformation=false)
FinishedAutofocusEvent(bool Success, double Voltage=.0)
virtual void InvokeWithParamsChild(DynExp::ModuleInstance &Instance, EventListenersType::EventFunctionType EventFunc) const override
virtual void InvokeWithParamsChild(DynExp::ModuleInstance &Instance, EventListenersType::EventFunctionType EventFunc) const override
virtual void InvokeWithParamsChild(DynExp::ModuleInstance &Instance, EventListenersType::EventFunctionType EventFunc) const override
PauseImageCapturingEvent(bool ResetImageTransformation=false)
virtual void InvokeWithParamsChild(DynExp::ModuleInstance &Instance, EventListenersType::EventFunctionType EventFunc) const override
virtual void InvokeWithParamsChild(DynExp::ModuleInstance &Instance, EventListenersType::EventFunctionType EventFunc) const override
Typed base class for inter-module events to realize CRTP.
Definition: Module.h:1011
Defines data for a thread belonging to a ModuleBase instance. Refer to RunnableInstance.
Definition: Module.h:793
std::function< void(ModuleInstance *, EventFuncArgs...)> EventFunctionType
Type of event functions to be invoked when the event is triggered. The first ModuleInstance argument ...
Definition: Module.h:899
Accumulates include statements to provide a precompiled header.