X-Git-Url: https://git.llucax.com/software/posixx.git/blobdiff_plain/7b35c34eaa3ee421eb5effc63801aeff69a9ffe8..59583e7a598819c27dea34bf619dd7a8139c028d:/src/linux/tipc.hpp diff --git a/src/linux/tipc.hpp b/src/linux/tipc.hpp index 15292e8..2d79f25 100644 --- a/src/linux/tipc.hpp +++ b/src/linux/tipc.hpp @@ -1,7 +1,7 @@ #ifndef POSIXX_LINUX_TIPC_HPP_ #define POSIXX_LINUX_TIPC_HPP_ -#include "../basic_socket.hpp" // posixx::socket +#include "../socket/basic_socket.hpp" // posixx::socket #include // all tipc stuff #include // memcpy @@ -117,7 +117,6 @@ struct name: tipc_name /** * Port sequence. * - * @see Multicast * @see tipc_name_seq struct from linux/tipc.h. */ struct nameseq: tipc_name_seq @@ -137,34 +136,7 @@ struct nameseq: tipc_name_seq * @param instance Lower and upper bound. */ nameseq(__u32 type, __u32 instance) throw (); -}; -/** - * Multicast port sequence. - * - * It's a port sequence just like nameseq used to simplify the use of the - * sockaddr. - * - * @see nameseq - * @see Estructura tipc_name_seq de linux/tipc.h - */ -struct multicast: tipc_name_seq -{ - /** - * Constructor. - * - * @param type Type of the multicast sequence. - * @param lower Lower bound. - * @param upper Upper bound. - */ - multicast(__u32 type, __u32 lower, __u32 upper) throw (); - /** - * Constructor. - * - * @param type Type of the multicast sequence. - * @param instance Lower and upper bound. - */ - multicast(__u32 type, __u32 instance) throw (); }; /** @@ -193,12 +165,12 @@ enum reason_t * * @see TIPC documentation: 1.4.3 Name Subscriptions */ -enum subcription_t +enum subscr_t { /** - * Causes the topology service to generate a event::PUBLISHED event + * Causes the topology service to generate a PUBLISHED event * for each port name or port name sequence it finds that overlaps - * the specified port name sequence; a TIPC_WITHDRAWN event is issued + * the specified port name sequence; a WITHDRAWN event is issued * each time a previously reported name becomes unavailable. * * Allows the topology service to inform the application if there @@ -221,7 +193,7 @@ enum subcription_t * * @see TIPC documentation: 1.4.3 Name Subscriptions */ -struct subscription: tipc_subscr +struct subscr: tipc_subscr { /** * Constructor. @@ -230,30 +202,31 @@ struct subscription: tipc_subscr * @param timeout A subscription timeout value, in ms * (or WAIT_FOREVER). * @param filter An event filter specifying which events are of - * interest to the application (see subscription_t). + * interest to the application (see subscr_t). * @param usr_handle An 8 byte user handle that is application-defined. */ - subscription(nameseq seq, __u32 timeout, __u32 filter, + subscr(nameseq seq, __u32 timeout, __u32 filter, const char* usr_handle = "") throw (); }; +/// Type of events. +enum event_t +{ + /// The port has been published. + PUBLISHED = TIPC_PUBLISHED, + /// The port has been withdrawn. + WITHDRAWN = TIPC_WITHDRAWN, + /// The event has timed out. + TIMEOUT = TIPC_SUBSCR_TIMEOUT +}; + /** * Event message. * * @see TIPC documentation: 1.4.3 Name Subscriptions */ -struct event: tipc_event +struct subscr_event: tipc_event { - /// Type of events. - enum type_t - { - /// The port has been published. - PUBLISHED = TIPC_PUBLISHED, - /// The port has been withdrawn. - WITHDRAWN = TIPC_WITHDRAWN, - /// The event has timed out. - TIMEOUT = TIPC_SUBSCR_TIMEOUT - }; }; /** @@ -275,7 +248,7 @@ struct sockaddr: sockaddr_tipc { ID = TIPC_ADDR_ID, ///< Port ID NAME = TIPC_ADDR_NAME, ///< Port name - NAMESEQ = TIPC_ADDR_NAMESEQ, ///< Name sequence or multicast + NAMESEQ = TIPC_ADDR_NAMESEQ ///< Name sequence or multicast }; /** @@ -322,14 +295,6 @@ struct sockaddr: sockaddr_tipc */ sockaddr(nameseq nameseq, scope_t scope = ZONE) throw (); - /** - * Constructor using a multicast port name sequence. - * - * @param mcast Multicast port name sequence. - * @param scope Bind scope. - */ - sockaddr(multicast mcast, scope_t scope = ZONE) throw (); - /// Type of TIPC address type_t type() const throw (); @@ -449,24 +414,7 @@ posixx::linux::tipc::nameseq::nameseq(__u32 t, __u32 instance) throw () } inline -posixx::linux::tipc::multicast::multicast(__u32 t, __u32 low, __u32 up) - throw () -{ - type = t; - lower = low; - upper = up; -} - -inline -posixx::linux::tipc::multicast::multicast(__u32 t, __u32 instance) throw () -{ - type = t; - lower = instance; - upper = instance; -} - -inline -posixx::linux::tipc::subscription::subscription(nameseq s, __u32 t, __u32 f, +posixx::linux::tipc::subscr::subscr(nameseq s, __u32 t, __u32 f, const char* uh) throw () { seq = s; @@ -509,15 +457,6 @@ posixx::linux::tipc::sockaddr::sockaddr(nameseq nameseq, scope_t s) throw () addr.nameseq = nameseq; } -inline -posixx::linux::tipc::sockaddr::sockaddr(multicast mcast, scope_t s) throw () -{ - family = AF_TIPC; - addrtype = TIPC_ADDR_MCAST; - scope = s; - addr.nameseq = mcast; -} - inline posixx::linux::tipc::sockaddr::type_t posixx::linux::tipc::sockaddr::type() const throw ()