Browse Source

[0.92.0] update docs for bug:000023 fix

git-svn-id: svn+ssh://jackaudio.org/trunk/jack@593 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/0.109.0
joq 22 years ago
parent
commit
4c8ad5692e
2 changed files with 17 additions and 14 deletions
  1. +7
    -6
      doc/transport.dox
  2. +10
    -8
      jack/transport.h

+ 7
- 6
doc/transport.dox View File

@@ -65,12 +65,13 @@ master active at a time. If no client is registered as timebase
master, frame numbers will be the only position information available.

The timebase master registers a callback that updates position
information while the transport is rolling. This function is called
immediately after the process callback in the same thread whenever the
transport is rolling, or when any client has set a new position in the
previous cycle. The first cycle after jack_set_timebase_callback() is
also treated as a new position. Its output affects the following
process cycle.
information while the transport is rolling. Its output affects the
following process cycle. This function is called immediately after
the process callback in the same thread whenever the transport is
rolling, or when any client has set a new position in the previous
cycle. The first cycle after jack_set_timebase_callback() is also
treated as a new position, or the first cycle after jack_activate() if
the client had been inactive.

@code
typedef int (*JackTimebaseCallback)(jack_transport_state_t state,


+ 10
- 8
jack/transport.h View File

@@ -142,11 +142,12 @@ typedef int (*JackSyncCallback)(jack_transport_state_t state,
* Register (or unregister) as a slow-sync client, one that cannot
* respond immediately to transport position changes.
*
* The @a sync_callback will be invoked on the first process cycle
* after its registration is complete. After that, it runs according
* to the ::JackSyncCallback rules. Clients that don't set a @a
* sync_callback are assumed to be ready immediately any time the
* transport wants to start.
* The @a sync_callback will be invoked in the first process cycle
* after its registration is complete, or in the first cycle after
* jack_activate() if the client had been inactive. After that, it
* runs according to the ::JackSyncCallback rules. Clients that don't
* set a @a sync_callback are assumed to be ready immediately any time
* the transport wants to start.
*
* @param client the JACK client structure.
* @param sync_callback is a realtime function that returns TRUE when
@@ -182,14 +183,15 @@ int jack_set_sync_timeout (jack_client_t *client,

/**
* Prototype for the @a timebase_callback used to provide extended
* position information.
* position information. Its output affects all of the following
* process cycle. This realtime function must not wait.
*
* This function is called immediately after process() in the same
* thread whenever the transport is rolling, or when any client has
* requested a new position in the previous cycle. The first cycle
* after jack_set_timebase_callback() is also treated as a new
* position. This realtime function must not wait. Its output
* affects all of the following process cycle.
* position, or the first cycle after jack_activate() if the client
* had been inactive.
*
* The timebase master may not use its @a pos argument to set @a
* pos->frame. To change position, use jack_transport_reposition() or


Loading…
Cancel
Save