m2etis  0.4
ChannelConfiguration.h
Go to the documentation of this file.
1 /*
2  Copyright (2016) Michael Baer, Daniel Bonrath, All rights reserved.
3 
4  Licensed under the Apache License, Version 2.0 (the "License");
5  you may not use this file except in compliance with the License.
6  You may obtain a copy of the License at
7 
8  http://www.apache.org/licenses/LICENSE-2.0
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15  */
16 
22 // The sequence of following statements is important. Do not reorder!!!
23 #ifndef __M2ETIS_PUBSUB_CHANNELCONFIGURATION_H__
24 #define __M2ETIS_PUBSUB_CHANNELCONFIGURATION_H__
25 
26 
27 namespace m2etis {
28  namespace pubsub {
29 
30  // Forward Decls
31  class ChannelConfigurationImpl;
32  struct ChannelEventInterface;
33  class PubSubSystemEnvironment;
34 
36  private:
38 
39  public:
40  uint8_t count;
41 
42  virtual ~ChannelConfiguration();
43 
44  ChannelConfiguration(const std::string & ip, const uint16_t port, const std::string & known_hostname, const uint16_t known_hostport, PubSubSystemEnvironment * pssi, const std::vector<std::string> & rootList);
45 
46  const std::vector<ChannelEventInterface *> & channels() const;
47  };
48  }
49 }
50 
51 #endif /* __M2ETIS_PUBSUB_CHANNELCONFIGURATION_H__ */
52 
#define M2ETIS_API