ASPiK SDK
Loading...
Searching...
No Matches
HostInfo Struct Reference

Information from the host that is updated on each buffer process cycle; includes BPM, time signature, SMPTE and other data. The values in the stock structure are consistent across most APIs, however others may be added (commnted out here) More...

#include <pluginstructures.h>

Public Attributes

unsigned long long uAbsoluteFrameBufferIndex = 0
 the sample index at top of buffer
 
double dAbsoluteFrameBufferTime = 0.0
 the time in seconds of the sample index at top of buffer
 
double dBPM = 0.0
 beats per minute, aka "tempo"
 
float fTimeSigNumerator = 0.f
 time signature numerator
 
uint32_t uTimeSigDenomintor = 0
 time signature denominator
 
uint32_t state = 0
 a combination of the values from StatesAndFlags; use to decode validity of other VST3 items in this struct
 
long long systemTime = 0
 system time in nanoseconds (optional)
 
double continousTimeSamples = 0.0
 project time, without loop (optional)
 
double projectTimeMusic = 0.0
 musical position in quarter notes (1.0 equals 1 quarter note)
 
double barPositionMusic = 0.0
 last bar start position, in quarter notes
 
double cycleStartMusic = 0.0
 
double cycleEndMusic = 0.0
 cycle end in quarter notes
 
uint32_t samplesToNextClock = 0
 MIDI Clock Resolution (24 Per Quarter Note), can be negative (nearest)
 
bool enableVSTSampleAccurateAutomation = false
 
double dCurrentBeat = 0.0
 current DAW beat value
 
bool bIsPlayingAU = false
 notorously incorrect in Logic - once set to true, stays stuck there
 
bool bTransportStateChanged = false
 only notifies a change, but not what was changed to...
 
uint32_t nDeltaSampleOffsetToNextBeat = 0
 samples to next beat
 
double dCurrentMeasureDownBeat = 0.0
 current downbeat
 
bool bIsCycling = false
 looping
 
double dCycleStartBeat = 0.0
 loop start
 
double dCycleEndBeat = 0.0
 loop end
 
bool bIsPlayingAAX = false
 flag if playing
 
long long nTickPosition = 0
 "Tick" is represented here as 1/960000 of a quarter note
 
bool bLooping = false
 looping flag
 
long long nLoopStartTick = 0
 start tick for loop
 
long long nLoopEndTick = 0
 end tick for loop
 

Detailed Description

Information from the host that is updated on each buffer process cycle; includes BPM, time signature, SMPTE and other data. The values in the stock structure are consistent across most APIs, however others may be added (commnted out here)

Author
Will Pirkle http://www.willpirkle.com
Remarks
This object is included in Designing Audio Effects Plugins in C++ 2nd Ed. by Will Pirkle
Version
Revision : 1.0
Date
Date : 2018 / 09 / 7

Member Data Documentation

◆ cycleStartMusic

double HostInfo::cycleStartMusic = 0.0
  • cycle start in quarter notes

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