|
|
||||||
|
iop_simplenet.h
Go to the documentation of this file.
159 virtual void DoWrite(TokenWriter& rTw,const std::string& rLabel="", const Type* pContext=0) const;
237 virtual void DoWrite(TokenWriter& rTw,const std::string& rLabel="", const Type* pContext=0) const;
303 * a number of <em>nodes</em>, each identified by its <em>node name</em>. In the current implementation,
304 * each node knows about the entire network ie knows about all other nodes. Each node plays two roles:
308 * In their server role, each node is configured to listen on its <em>server port</em> for incomming
309 * TCP connections. When a client (i.e. some other node in client role) connects to the TCP port, the server
310 * replies to a simple command set in order to allow the client to subscribe to the nodes output events.
311 * When the application executes an output event on the node, this is notified to all connected clients and
312 * the clients will interpret the event as an input reading. Vice versa, the each node itself has the
313 * role of a client and subscribes to relevant output events served by other nodes in their server role.
317 * The protocol for commands and notification is libFAUDES-token based and can be inspected eg via nc
346 * <td> subset of available events (e.g. <tt><Subscribed> Ev_2 Ev_7 Ev_9 </Subscribed></tt>)</td>
351 * incomming messages and issues event notifications to any relevant events; and, (2) a TCP client
362 * underlying name resolution by DNS services, but node configuration itself refers to simple-net node names
363 * only. Since each node knows about the names of all participating nodes, each node will know when
369 * relevant subset explicitly by setting the appropriate broadcast address, e.g. 192.168.2.255:40000.
557 * It starts the background thread for incomming connections and tries to connect to relevant servers.
609 virtual void DoReadPreface(TokenReader& rTr, const std::string& rLabel = "", const Type* pContext=0);
627 virtual void DoWritePreface(TokenWriter& rTw, const std::string& rLabel="", const Type* pContext=0) const;
#define FAUDES_TYPE_DECLARATION(ftype, ctype, cbase) faudes type declaration macro Definition: cfl_types.h:867 Attribute for the configuration of a input or output mapping. Definition: iop_vdevice.h:68 Configuration of a networked input or output. Definition: iop_simplenet.h:251 const AttributeSimplenetOutput * Outputp(void) const Get output mapping. Definition: iop_simplenet.h:270 Configuration of a network input mapping. Definition: iop_simplenet.h:173 virtual bool IsDefault(void) const Test for default value (always, since we have no data) Definition: iop_simplenet.h:183 Configuration of a network output mapping. Definition: iop_simplenet.h:96 virtual bool IsDefault(void) const Test for default value (always, since we have no data) Definition: iop_simplenet.h:106 A TokenReader reads sequential tokens from a file or string. Definition: cfl_tokenreader.h:63 A TokenWriter writes sequential tokens to a file, a string or stdout. Definition: cfl_tokenwriter.h:51 Base class of all libFAUDES objects that participate in the run-time interface. Definition: cfl_types.h:239 An nDevice implements networked IO via a simple TCP/IP protocol. Definition: iop_simplenet.h:435 friend void * NDeviceServer(void *) SimplenetAddress mListenAddress Simplenet: address of my server incl port (localhost:40000) Definition: iop_simplenet.h:637 TaNameSet< AttributeSimplenetEvent > * pConfiguration Overall configuration (with actual type) Definition: iop_simplenet.h:631 std::map< std::string, EventSet > mInputSubscriptions Compiled data: map subscriptions. Definition: iop_simplenet.h:649 std::map< std::string, ServerState > mInputServerStates Background: connection states to event servers (by node name) Definition: iop_simplenet.h:687 int mBroadcastSocket Background: udp broadcast socket (background only) Definition: iop_simplenet.h:664 std::map< int, ClientState > mOutputClientStates Background: map sockets to connection states (shared) Definition: iop_simplenet.h:675 SimplenetAddress mEffectiveListenAddress Simplenet: effective address of my server port. Definition: iop_simplenet.h:643 friend void * NDeviceReply(void *) SimplenetAddress mBroadcastAddress Simplenet: address for udp broadcast (255.255.255.255:40000. Definition: iop_simplenet.h:640 std::map< std::string, std::string > mNetworkNodes Simplenet: list of nodes in this network incl default addresses. Definition: iop_simplenet.h:646 int mListenSocket Background: server socket to listen (background only) Definition: iop_simplenet.h:661 Virtual base class to define the interface for event io. Definition: iop_vdevice.h:261 Includes all libFAUDES headers, no plugins. Virtual device for interface definition Background: state of a connection to a client (shared) Definition: iop_simplenet.h:667 Background: state of a connection to an event server (shared) Definition: iop_simplenet.h:678 SimplenetAddress mDefaultAddress Definition: iop_simplenet.h:680 libFAUDES 2.32b --- 2024.03.01 --- c++ api documentaion by doxygen |