Objects of type
port<T> are port objects that can be declared in class scope as
member variables of a user-defined graph type (i.e., member variables of a class
that inherits from
graph), or they are defined
implicitly for a kernel according to its function signature. The template parameter
T can be one of
input_port is an
alias for the type
output_port is an alias for the type
inout_port is an alias for the type
Used to connect between kernels within a graph and across levels of hierarchy in customer specification containing platform, graphs, and subgraphs.
When applied to a destination port within a connection, this operator inverts the Boolean semantics of the source port to which it is connected. Therefore, it has the effect of converting a 0 to 1 and 1 to 0.
When applied to a destination RTP port within a connection, this operator specifies an asynchronous update of the destination port's RTP buffer from the source port that it is connected to or from the external control application if the source is a graph port left unconnected. Therefore, the receiving kernel does not wait for the value for each invocation, rather it uses previous value stored in the corresponding buffer.
When applied to a source or destination window
port, this operator specifies that the window object will not be synchronized upon
kernel entry. Instead, the
window_release APIs must be used to manage the
window object synchronization explicitly within the kernel code.
When applied to a source RTP port within a connection, this operator specifies a synchronous read of the source port's RTP buffer from the destination port that it is connected to or from the external control application if the destination is a graph port left unconnected. Therefore, the receiving kernel waits for a new value to be produced for each invocation of the producing kernel.