예제 #1
0
 static bool createStream(InputPort<T>& input_port, ConnPolicy const& policy)
 {
     StreamConnID *sid = new StreamConnID(policy.name_id);
     RTT::base::ChannelElementBase::shared_ptr outhalf = buildChannelOutput( input_port, sid );
     if ( createAndCheckStream(input_port, policy, outhalf, sid) )
         return true;
     input_port.removeConnection(sid);
     return false;
 }
예제 #2
0
        virtual void disconnect(bool forward)
        {
            InputPort<T>* port = this->port;
            this->port = 0;

            if (forward)
            {
                if (port)
                    port->removeConnection(cid);
            }
            else
                base::ChannelElement<T>::disconnect(false);
        }