Lines Matching defs:port
72 when accessing to a certain port (see the section \ref seq_subs).
76 clients. A port is corresponding to the MIDI port in the case of MIDI device,
78 Each port may have capability flags, which specify the read/write
79 accessibility and subscription permissions of the port.
80 For creation of a port, call #snd_seq_create_port()
81 with the appropriate port attribute specified in #snd_seq_port_info_t
84 For creating a port for the normal use, there is a helper function
87 // create a new port; return the port id
88 // port will be writable and accept the write-subscription.
91 return snd_seq_create_simple_port(handle, "my port",
114 If a port fills the memory pool, another can't use it any more.
127 Even though an event can be delivered to a port without subscription
132 The port associated with this device has READ capability - which means
133 this port is readable from other ports.
135 as MIDI stream, this program must subscribe itself to the MIDI port
137 Then, a connection from MIDI input port to this program is established.
141 MIDI input port (keyboard)
147 application port
152 In ALSA system, MIDI device is not opened until the associated MIDI port
154 to MIDI port for write.
158 application port
164 MIDI output port (WaveTable etc.)
172 and send to arbitrary port, just like a Unix pipe application using
181 sequencer port #1
187 sequencer port #2
220 of client id and port id numbers.
299 An client that relies on these relative timestamps is the MIDI input port.
313 contains a combination of client id and port id numbers, defined as
319 fill the port id of source.port and
320 both client and port of dest field.
325 the event is delivered to all the clients connected to the source port.
330 The #SND_SEQ_PORT_SYSTEM_TIMER is the system timer port,
332 announce port.
336 to the system timer port.
338 This port supports subscription. The received timer events are
341 The latter port does not receive messages but supports subscription.
342 When each client or port is attached, detached or modified,
343 an announcement is sent to subscribers from this port.
467 to the system timer port. For example,
474 ev.dest.port = SND_SEQ_PORT_SYSTEM_TIMER;
476 ev.source.port = my_port_id;
496 event to the system timer port as well. There are helper functions,
514 Each ALSA port can have capability flags.
517 The former means that the port allows to send events to other ports,
519 that the port allows to receive events from other ports.
521 are permissions of the port from the viewpoint of other ports.
529 For example, the port with MIDI input device always has
531 and the port with MIDI output device always has
539 to the specified port.
540 For example, when a port makes READ subscription
541 to MIDI input port, this port must have #SND_SEQ_PORT_CAP_WRITE capability,
543 Only MIDI input port must have #SND_SEQ_PORT_CAP_SUBS_READ capability.
549 #SND_SEQ_PORT_CAP_NO_EXPORT to the port.
567 sender.port = MIDI_input_port;
569 dest.port = my_port;
589 When set up, the timestamp of incoming queue to the destination port
605 if #SND_SEQ_PORT_CAP_NO_EXPORT capability is set in either sender or receiver port.
611 Assume MIDI input port = 64:0, application port = 128:0, and
613 The application port must have capability #SND_SEQ_PORT_CAP_WRITE.
620 sender.port = 0;
622 dest.port = 0;
635 Assume MIDI output port = 65:1 and application port = 128:0.
636 The application port must have capability #SND_SEQ_PORT_CAP_READ.
643 sender.port = 0;
645 dest.port = 1;
677 sender.port = 0;
679 dest.port = 0;
693 The subscribed port doesn't have to know the exact sender address.
697 Destination port is ignored.
745 snd_seq_ev_set_source(&ev, port);
969 * with #SND_SEQ_EVENT_CLIENT_START is broadcast to announce port.
1037 * #SND_SEQ_EVENT_CLIENT_EXIT is broadcast to announce port.
2147 * \brief Get port id of a port_info container
2149 * \return port id
2156 return info->addr.port;
2160 * \brief Get client/port address of a port_info container
2162 * \return client/port address pointer
2201 * \return port type bits
2277 * \brief Get the port-specified mode of a port_info container
2279 * \return 1 if port id is specified at creation
2290 * \brief Get the time-stamping mode of the given port in a port_info container
2292 * \return 1 if the port updates timestamps of incoming events
2303 * \brief Get whether the time-stamping of the given port is real-time mode
2329 * \brief Get the direction of the port
2331 * \return the direction of the port
2342 * \brief Get the UMP Group assigned to the port
2344 * \return 0 for no conversion, or the (1-based) UMP Group number assigned to the port
2368 * \brief Set the port id of a port_info container
2370 * \param port port id
2374 void snd_seq_port_info_set_port(snd_seq_port_info_t *info, int port)
2377 info->addr.port = port;
2381 * \brief Set the client/port address of a port_info container
2383 * \param addr client/port address
2422 * \param type port type bits
2472 * \brief Set the port-specified mode of a port_info container
2474 * \param val non-zero if specifying the port id at creation
2488 * \brief Set the time-stamping mode of the given port
2533 * \brief Set the direction of the port
2535 * \param direction the port direction
2546 * \brief Set the UMP Group assigned to the port
2559 * \brief create a sequencer port on the current client
2561 * \param port port information for the new port
2564 * Creates a sequencer port on the current client.
2565 * The attributes of created port is specified in \a info argument.
2568 * The port id to be created can be specified via #snd_seq_port_info_set_port_specified.
2569 * You can get the created port id by reading the port pointer via #snd_seq_port_info_get_port.
2571 * Each port has the capability bit-masks to specify the access capability
2572 * of the port from other clients.
2574 * - #SND_SEQ_PORT_CAP_READ Readable from this port
2575 * - #SND_SEQ_PORT_CAP_WRITE Writable to this port.
2583 * Each port has also the type bitmasks defined as follows:
2584 * - #SND_SEQ_PORT_TYPE_SPECIFIC Hardware specific port
2597 * A port may contain specific midi channels, midi voices and synth voices.
2603 int snd_seq_create_port(snd_seq_t *seq, snd_seq_port_info_t * port)
2605 assert(seq && port);
2606 port->addr.client = seq->client;
2607 return seq->ops->create_port(seq, port);
2611 * \brief delete a sequencer port on the current client
2613 * \param port port to be deleted
2616 * Deletes the existing sequencer port on the current client.
2620 int snd_seq_delete_port(snd_seq_t *seq, int port)
2626 pinfo.addr.port = port;
2631 * \brief obtain the information of a port on an arbitrary client
2634 * \param port port id to get
2640 int snd_seq_get_any_port_info(snd_seq_t *seq, int client, int port, snd_seq_port_info_t * info)
2642 assert(seq && info && client >= 0 && port >= 0);
2645 info->addr.port = port;
2650 * \brief obtain the information of a port on the current client
2652 * \param port port id to get
2659 int snd_seq_get_port_info(snd_seq_t *seq, int port, snd_seq_port_info_t * info)
2661 return snd_seq_get_any_port_info(seq, seq->client, port, info);
2665 * \brief set the information of a port on the current client
2667 * \param port port to be set
2668 * \param info port information to be set
2673 int snd_seq_set_port_info(snd_seq_t *seq, int port, snd_seq_port_info_t * info)
2675 assert(seq && info && port >= 0);
2677 info->addr.port = port;
2682 * \brief query the next matching port
2686 * Queries the next matching port on the client specified in
2688 * The search begins at the next port specified in
2689 * port field of \a info argument.
2690 * For finding the first port at a certain client, give -1.
2692 * If a matching port is found, its attributes are stored on
2935 * \brief subscribe a port connection
3028 * \brief Get the port id of a query_subscribe container
3030 * \return port id
3037 return info->root.port;
3041 * \brief Get the client/port address of a query_subscribe container
3043 * \return client/port address pointer
3171 * \brief Set the port id of a query_subscribe container
3173 * \param port port id
3177 void snd_seq_query_subscribe_set_port(snd_seq_query_subscribe_t *info, int port)
3180 info->root.port = port;
3184 * \brief Set the client/port address of a query_subscribe container
3186 * \param addr client/port address pointer
3224 * \brief query port subscriber list
3229 * Queries the subscribers accessing to a port.
3232 * At least, the client id, the port id, the index number and
3235 * can be specified to check whether the readers or the writers to the port.
4908 ev->dest.port != info->dest.port)