include/ff/d/zmqImpl.hpp
/*
     * Constructor. 
     *
     * It Creates a One-to-Many descriptor, that is, instantiate a
     * transport layer using the first node as a router.  
     *
     * \param name is the name of the descriptor.
     * \param peers is the number of peers involved (receiving nodes).
     * \param transport is a pointer to the transport layer object of class
     * zmqTransport.
     * \param P is a flag that identifies whether the descriptor refers to a \p
     * sender (i.e. a Router) or to a \p receiver.
     *
     */
Constructor.
It Creates a One-to-Many descriptor, that is, instantiate a
transport layer using the first node as a router.

\param name is the name of the descriptor.
\param peers is the number of peers involved (receiving nodes).
\param transport is a pointer to the transport layer object of class
zmqTransport.
\param P is a flag that identifies whether the descriptor refers to a \p
sender  or to a \p receiver.
Constructor . It Creates a One - to - Many descriptor that is instantiate a transport layer using the first node as a router . \ param name is the name of the descriptor . \ param peers is the number of peers involved ( receiving nodes ) . \ param transport is a pointer to the transport layer object of class zmqTransport . \ param P is a flag that identifies whether the descriptor refers to a \ p sender or to a \ p receiver .
descriptor1_N(const std::string name, const int peers, zmqTransport* const transport, const bool P):
        name(name), socket(NULL), transport(transport), P(P), peers(P ? peers : 1), zmqHdrSet(false), transportIDs(peers) 
    {
        if (transport) 
            socket = transport->newEndPoint(!P); 
        if (P) {
            std::stringstream identity;
            for(int i = 0; i < peers; ++i) {
                identity.str("");
                identity << name << ":" << i;
                transportIDs[i]=identity.str();
            }
        }
    }
descriptor1_N ( const std :: string name , const int peers , zmqTransport * const transport , const bool P ) : name ( name ) , socket ( NULL ) , transport ( transport ) , P ( P ) , peers ( P ? peers : 1 ) , zmqHdrSet ( false ) , transportIDs ( peers ) { if ( transport ) socket = transport -> newEndPoint ( ! P ) ; if ( P ) { std :: stringstream identity ; for ( int i = 0 ; i < peers ; ++ i ) { identity . str ( " " ) ; identity << name << " " << i ; transportIDs [ i ] = identity . str ( ) ; } } }
Constructor.
Constructor .
// NOTE: we want to use ZMQ_ROUTER at producer side !P means ROUTER // => create a socket (a new end-point) acting as a ROUTER -- REW, // P always true?