AAX SDK  2.4.1
Avid Audio Extensions Development Kit
List of all members | Public Member Functions
AAX_VTransport Class Reference

#include <AAX_VTransport.h>

Inheritance diagram for AAX_VTransport:
[legend]
Collaboration diagram for AAX_VTransport:
[legend]

Description

Version-managed concrete AAX_ITransport class.

Public Member Functions

 AAX_VTransport (IACFUnknown *pUnknown)
 
 ~AAX_VTransport () AAX_OVERRIDE
 
AAX_Result GetCurrentTempo (double *TempoBPM) const AAX_OVERRIDE
 CALL: Gets the current tempo. More...
 
AAX_Result GetCurrentMeter (int32_t *MeterNumerator, int32_t *MeterDenominator) const AAX_OVERRIDE
 CALL: Gets the current meter. More...
 
AAX_Result IsTransportPlaying (bool *isPlaying) const AAX_OVERRIDE
 CALL: Indicates whether or not the transport is playing back. More...
 
AAX_Result GetCurrentTickPosition (int64_t *TickPosition) const AAX_OVERRIDE
 CALL: Gets the current tick position. More...
 
AAX_Result GetCurrentLoopPosition (bool *bLooping, int64_t *LoopStartTick, int64_t *LoopEndTick) const AAX_OVERRIDE
 CALL: Gets current information on loop playback. More...
 
AAX_Result GetCurrentNativeSampleLocation (int64_t *SampleLocation) const AAX_OVERRIDE
 CALL: Gets the current playback location of the native audio engine. More...
 
AAX_Result GetCustomTickPosition (int64_t *oTickPosition, int64_t iSampleLocation) const AAX_OVERRIDE
 CALL: Given an absolute sample position, gets the corresponding tick position. More...
 
AAX_Result GetBarBeatPosition (int32_t *Bars, int32_t *Beats, int64_t *DisplayTicks, int64_t SampleLocation) const AAX_OVERRIDE
 CALL: Given an absolute sample position, gets the corresponding bar and beat position. More...
 
AAX_Result GetTicksPerQuarter (uint32_t *ticks) const AAX_OVERRIDE
 CALL: Retrieves the number of ticks per quarter note. More...
 
AAX_Result GetCurrentTicksPerBeat (uint32_t *ticks) const AAX_OVERRIDE
 CALL: Retrieves the number of ticks per beat. More...
 
AAX_Result GetTimelineSelectionStartPosition (int64_t *oSampleLocation) const AAX_OVERRIDE
 CALL: Retrieves the current absolute sample position of the beginning of the current transport selection. More...
 
AAX_Result GetTimeCodeInfo (AAX_EFrameRate *oFrameRate, int32_t *oOffset) const AAX_OVERRIDE
 CALL: Retrieves the current time code frame rate and offset. More...
 
AAX_Result GetFeetFramesInfo (AAX_EFeetFramesRate *oFeetFramesRate, int64_t *oOffset) const AAX_OVERRIDE
 CALL: Retrieves the current timecode feet/frames rate and offset. More...
 
AAX_Result IsMetronomeEnabled (int32_t *isEnabled) const AAX_OVERRIDE
 Sets isEnabled to true if the metronome is enabled. More...
 
AAX_Result GetHDTimeCodeInfo (AAX_EFrameRate *oHDFrameRate, int64_t *oHDOffset) const AAX_OVERRIDE
 CALL: Retrieves the current HD time code frame rate and offset. More...
 
- Public Member Functions inherited from AAX_ITransport
virtual ~AAX_ITransport ()
 Virtual destructor. More...
 

Constructor & Destructor Documentation

◆ AAX_VTransport()

AAX_VTransport::AAX_VTransport ( IACFUnknown pUnknown)

◆ ~AAX_VTransport()

AAX_VTransport::~AAX_VTransport ( )

Member Function Documentation

◆ GetCurrentTempo()

AAX_Result AAX_VTransport::GetCurrentTempo ( double *  TempoBPM) const
virtual

CALL: Gets the current tempo.

Returns the tempo corresponding to the current position of the transport counter

Note
The resolution of the tempo returned here is based on the host's tempo resolution, so it will match the tempo displayed in the host. Use GetCurrentTicksPerBeat() to calculate the tempo resolution note.
Parameters
[out]TempoBPMThe current tempo in beats per minute

Implements AAX_ITransport.

◆ GetCurrentMeter()

AAX_Result AAX_VTransport::GetCurrentMeter ( int32_t *  MeterNumerator,
int32_t *  MeterDenominator 
) const
virtual

CALL: Gets the current meter.

Returns the meter corresponding to the current position of the transport counter

Parameters
[out]MeterNumeratorThe numerator portion of the meter
[out]MeterDenominatorThe denominator portion of the meter

Implements AAX_ITransport.

◆ IsTransportPlaying()

AAX_Result AAX_VTransport::IsTransportPlaying ( bool *  isPlaying) const
virtual

CALL: Indicates whether or not the transport is playing back.

Parameters
[out]isPlayingtrue if the transport is currently in playback

Implements AAX_ITransport.

◆ GetCurrentTickPosition()

AAX_Result AAX_VTransport::GetCurrentTickPosition ( int64_t *  TickPosition) const
virtual

CALL: Gets the current tick position.

Returns the current tick position corresponding to the current transport position. One "Tick" is represented here as 1/960000 of a quarter note. That is, there are 960,000 of these ticks in a quarter note.

Host Compatibility Notes:
The tick resolution here is different than that of the tick displayed in Pro Tools. "Display ticks" (as they are called) are 1/960 of a quarter note.
Parameters
[out]TickPositionThe tick position value

Implements AAX_ITransport.

◆ GetCurrentLoopPosition()

AAX_Result AAX_VTransport::GetCurrentLoopPosition ( bool *  bLooping,
int64_t *  LoopStartTick,
int64_t *  LoopEndTick 
) const
virtual

CALL: Gets current information on loop playback.

Host Compatibility Notes:
This does not indicate anything about the status of the "Loop Record" option. Even when the host is configured to loop playback, looping may not occur if certain conditions are not met (i.e. the length of the selection is too short)
Parameters
[out]bLoopingtrue if the host is configured to loop playback
[out]LoopStartTickThe starting tick position of the selection being looped (see GetCurrentTickPosition())
[out]LoopEndTickThe ending tick position of the selection being looped (see GetCurrentTickPosition())

Implements AAX_ITransport.

◆ GetCurrentNativeSampleLocation()

AAX_Result AAX_VTransport::GetCurrentNativeSampleLocation ( int64_t *  SampleLocation) const
virtual

CALL: Gets the current playback location of the native audio engine.

When called from a ProcessProc render callback, this method will provide the absolute sample location at the beginning of the callback's audio buffers.

When called from AAX_IEffectParameters::RenderAudio_Hybrid(), this method will provide the absolute sample location for the samples in the method's output audio buffers. To calculate the absolute sample location for the sampels in the method's input buffers (i.e. the timelin location where the samples originated) subtract the value provided by AAX_IController::GetHybridSignalLatency() from this value.

When called from a non-real-time thread, this method will provide the current location of the samples being processed by the plug-in's ProcessProc on its real-time processing thread.

Note
This method only returns a value during playback. It cannot be used to determine, e.g., the location of the timeline selector while the host is not in playback.
Parameters
[out]SampleLocationAbsolute sample location of the first sample in the current native processing buffer

Implements AAX_ITransport.

◆ GetCustomTickPosition()

AAX_Result AAX_VTransport::GetCustomTickPosition ( int64_t *  oTickPosition,
int64_t  iSampleLocation 
) const
virtual

CALL: Given an absolute sample position, gets the corresponding tick position.

Host Compatibility Notes:
There is a minor performance cost associated with using this API in Pro Tools. It should not be used excessively without need.
Parameters
[out]oTickPositionthe timeline tick position corresponding to iSampleLocation
[in]iSampleLocationAn absolute sample location (see GetCurrentNativeSampleLocation())

Implements AAX_ITransport.

◆ GetBarBeatPosition()

AAX_Result AAX_VTransport::GetBarBeatPosition ( int32_t *  Bars,
int32_t *  Beats,
int64_t *  DisplayTicks,
int64_t  SampleLocation 
) const
virtual

CALL: Given an absolute sample position, gets the corresponding bar and beat position.

Host Compatibility Notes:
There is a minor performance cost associated with using this API in Pro Tools. It should not be used excessively without need.
Parameters
[out]BarsThe bar corresponding to SampleLocation
[out]BeatsThe beat corresponding to SampleLocation
[out]DisplayTicksThe ticks corresponding to SampleLocation
[in]SampleLocationAn absolute sample location (see GetCurrentNativeSampleLocation())

Implements AAX_ITransport.

◆ GetTicksPerQuarter()

AAX_Result AAX_VTransport::GetTicksPerQuarter ( uint32_t *  ticks) const
virtual

CALL: Retrieves the number of ticks per quarter note.

Parameters
[out]ticks

Implements AAX_ITransport.

◆ GetCurrentTicksPerBeat()

AAX_Result AAX_VTransport::GetCurrentTicksPerBeat ( uint32_t *  ticks) const
virtual

CALL: Retrieves the number of ticks per beat.

Parameters
[out]ticks

Implements AAX_ITransport.

◆ GetTimelineSelectionStartPosition()

AAX_Result AAX_VTransport::GetTimelineSelectionStartPosition ( int64_t *  oSampleLocation) const
virtual

CALL: Retrieves the current absolute sample position of the beginning of the current transport selection.

Note
This method is part of the version 2 transport interface
Parameters
[out]oSampleLocation

Implements AAX_ITransport.

◆ GetTimeCodeInfo()

AAX_Result AAX_VTransport::GetTimeCodeInfo ( AAX_EFrameRate oFrameRate,
int32_t *  oOffset 
) const
virtual

CALL: Retrieves the current time code frame rate and offset.

Note
This method is part of the version 2 transport interface
Parameters
[out]oFrameRate
[out]oOffset

Implements AAX_ITransport.

◆ GetFeetFramesInfo()

AAX_Result AAX_VTransport::GetFeetFramesInfo ( AAX_EFeetFramesRate oFeetFramesRate,
int64_t *  oOffset 
) const
virtual

CALL: Retrieves the current timecode feet/frames rate and offset.

Note
This method is part of the version 2 transport interface
Parameters
[out]oFeetFramesRate
[out]oOffset

Implements AAX_ITransport.

◆ IsMetronomeEnabled()

AAX_Result AAX_VTransport::IsMetronomeEnabled ( int32_t *  isEnabled) const
virtual

Sets isEnabled to true if the metronome is enabled.

Note
This method is part of the version 2 transport interface
Parameters
[out]isEnabled

Implements AAX_ITransport.

◆ GetHDTimeCodeInfo()

AAX_Result AAX_VTransport::GetHDTimeCodeInfo ( AAX_EFrameRate oHDFrameRate,
int64_t *  oHDOffset 
) const
virtual

CALL: Retrieves the current HD time code frame rate and offset.

Note
This method is part of the version 3 transport interface
Parameters
[out]oHDFrameRate
[out]oHDOffset

Implements AAX_ITransport.


The documentation for this class was generated from the following file: