Dripline-Cpp  v2.4.2
Dripline Implementation in C++
oscillator_service_hub.hh
Go to the documentation of this file.
1 /*
2  * oscillator_service_hub.hh
3  *
4  * Created on: May 16, 2019
5  * Author: N.S. Oblath
6  */
7 
8 #ifndef EXAMPLES_OSCILLATOR_SERVICE_HUB_HH_
9 #define EXAMPLES_OSCILLATOR_SERVICE_HUB_HH_
10 
11 #include "hub.hh"
12 
13 #include "oscillator.hh"
14 
15 namespace dripline
16 {
17 
19  {
20  public:
21  oscillator_service_hub( const scarab::param_node& a_config = scarab::param_node() );
22  virtual ~oscillator_service_hub();
23 
24  void execute();
25 
26  mv_referrable( class oscillator, oscillator );
27 
28  mv_accessible( int, return );
29 
30  private:
31  reply_ptr_t handle_set_frequency_request( const request_ptr_t a_request );
32  reply_ptr_t handle_get_frequency_request( const request_ptr_t a_request );
33 
34  reply_ptr_t handle_set_amplitude_request( const request_ptr_t a_request );
35  reply_ptr_t handle_get_amplitude_request( const request_ptr_t a_request );
36 
37  reply_ptr_t handle_set_start_time_request( const request_ptr_t a_request );
38  reply_ptr_t handle_get_start_time_request( const request_ptr_t a_request );
39 
40  reply_ptr_t handle_get_in_phase_request( const request_ptr_t a_request );
41  reply_ptr_t handle_get_quadrature_request( const request_ptr_t a_request );
42  reply_ptr_t handle_get_iq_request( const request_ptr_t a_request );
43  };
44 
45 } /* namespace dripline */
46 
47 #endif /* EXAMPLES_OSCILLATOR_SERVICE_HUB_HH_ */
std::shared_ptr< msg_request > request_ptr_t
Definition: dripline_fwd.hh:23
Service class aimed at adding a Dripline API to an existing codebase.
Definition: hub.hh:70
std::shared_ptr< msg_reply > reply_ptr_t
Definition: dripline_fwd.hh:24
#define DRIPLINE_EXAMPLES_API
Definition: dripline_api.hh:35