GNU Radio Manual and C++ API Reference  3.9.1.0
The Free & Open Software Radio Ecosystem
rpcserver_booter_aggregator.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2012 Free Software Foundation, Inc.
4  *
5  * This file is part of GNU Radio
6  *
7  * SPDX-License-Identifier: GPL-3.0-or-later
8  *
9  */
10 
11 #ifndef RPCSERVER_BOOTER_AGGREGATOR
12 #define RPCSERVER_BOOTER_AGGREGATOR
13 
14 #include <gnuradio/api.h>
17 #include <memory>
18 #include <string>
19 
20 class rpcserver_server;
21 
23 {
24 public:
26  ~rpcserver_booter_aggregator() override;
27 
28  rpcserver_base* i() override;
29  const std::string& type() override;
30  const std::vector<std::string> endpoints() override;
31 
32  const std::vector<std::string>& registeredServers();
33 
34 protected:
35  friend class rpcmanager;
36  rpcserver_aggregator* agg();
37 
38 private:
39  std::string d_type;
40  std::shared_ptr<rpcserver_aggregator> server;
41 };
42 
43 #endif /* RPCSERVER_BOOTER_AGGREGATOR */
rpcserver_booter_base::type
virtual const std::string & type()=0
rpcserver_booter_base::endpoints
virtual const std::vector< std::string > endpoints()=0
rpcmanager
Definition: rpcmanager.h:20
rpcserver_booter_base.h
rpcserver_aggregator
Definition: rpcserver_aggregator.h:20
GR_RUNTIME_API
#define GR_RUNTIME_API
Definition: gnuradio-runtime/include/gnuradio/api.h:18
rpcserver_booter_base::i
virtual rpcserver_base * i()=0
rpcserver_aggregator.h
rpcserver_booter_aggregator
Definition: rpcserver_booter_aggregator.h:22
api.h
rpcserver_base
Definition: rpcserver_base.h:16
rpcserver_booter_base
Definition: rpcserver_booter_base.h:19