A Position is made up of bars.beats.sixteenths.ticks.
- int bars
- this is the size of the number of beats per bar (top part of time sig)
- int beats
- The size of the beat is the the beat unit (bot part of time sig).
- int sixteenths
- This is always the size of a 1/16th note regardless of time sig (so if bot part is 16, this will always be 1).
- int ticks
- 240 ticks per sixteenth.
- double sub_tick
- 0.0 to 1.0 for precision.
- double total_ticks
- Cache so we don't need to call position_get_ticks.
- long frames
- Position in frames (samples).
This is always the size of a 1/16th note regardless of time sig (so if bot part is 16, this will always be 1).
This is added for convenience when compared to BBT, so that the user only has 240 ticks to deal with for precise operations instead of 960.