83 case 25:
return fps25;
116 const auto tie = [] (
const FrameRate&
x) {
return std::tie (
x.base,
x.drop,
x.pulldown); };
117 return tie (*
this) ==
tie (other);
121 bool operator!= (
const FrameRate& other)
const {
return ! (*
this == other); }
143 template <
typename Member,
typename Value>
147 copy.*member = std::forward<Value> (
value);
169 const auto tie = [] (
auto&
x) {
return std::tie (
x.numerator,
x.denominator); };
170 return tie (*
this) ==
tie (other);
175 return ! operator== (other);
193 const auto tie = [] (
auto&
x) {
return std::tie (
x.ppqStart,
x.ppqEnd); };
194 return tie (*
this) ==
tie (other);
199 return ! operator== (other);
274 return std::tie (
i.timeInSamples,
277 i.ppqPositionOfLastBarStart,
283 i.timeSigDenominator,
289 return tie (*
this) ==
tie (other);
294 return ! operator== (other);
420 return std::make_tuple (
i.getTimeInSamples(),
421 i.getTimeInSeconds(),
423 i.getEditOriginTime(),
424 i.getPpqPositionOfLastBarStart(),
427 i.getTimeSignature(),
436 return tie (*
this) ==
tie (other);
441 return ! operator== (other);
447 return (flagToCheck &
flags) != 0;
455 template <
typename Value>
461 template <
typename Value>
515 [[deprecated (
"Use getPosition instead. Not all hosts are able to provide all time position information; getPosition differentiates clearly between set and unset fields.")]]
522 if (
const auto sig = pos->getTimeSignature())
524 result.timeSigNumerator = sig->numerator;
525 result.timeSigDenominator = sig->denominator;
528 if (
const auto loop = pos->getLoopPoints())
534 if (
const auto frame = pos->getFrameRate())
535 result.frameRate = *frame;
537 if (
const auto timeInSeconds = pos->getTimeInSeconds())
538 result.timeInSeconds = *timeInSeconds;
540 if (
const auto lastBarStartPpq = pos->getPpqPositionOfLastBarStart())
541 result.ppqPositionOfLastBarStart = *lastBarStartPpq;
543 if (
const auto ppqPosition = pos->getPpqPosition())
544 result.ppqPosition = *ppqPosition;
546 if (
const auto originTime = pos->getEditOriginTime())
547 result.editOriginTime = *originTime;
549 if (
const auto bpm = pos->getBpm())
552 if (
const auto timeInSamples = pos->getTimeInSamples())
553 result.timeInSamples = *timeInSamples;
555 result.isPlaying = pos->getIsPlaying();
556 result.isRecording = pos->getIsRecording();
557 result.isLooping = pos->getIsLooping();
#define copy(x)
Definition ADnoteParameters.cpp:1011
goto loop
Definition Spc_Cpu.h:155
CAdPlugDatabase::CRecord::RecordType type
Definition adplugdb.cpp:93
Definition juce_AudioPlayHead.h:65
static FrameRate fromType(FrameRateType type)
Definition juce_AudioPlayHead.h:124
FrameRate(FrameRateType type)
Definition juce_AudioPlayHead.h:71
int base
Definition juce_AudioPlayHead.h:151
bool isPullDown() const
Definition juce_AudioPlayHead.h:99
JUCE_NODISCARD FrameRate withDrop(bool x=true) const
Definition juce_AudioPlayHead.h:108
FrameRateType getType() const
Definition juce_AudioPlayHead.h:78
JUCE_NODISCARD FrameRate withPullDown(bool x=true) const
Definition juce_AudioPlayHead.h:111
JUCE_NODISCARD FrameRate withBaseRate(int x) const
Definition juce_AudioPlayHead.h:105
bool drop
Definition juce_AudioPlayHead.h:152
bool pulldown
Definition juce_AudioPlayHead.h:152
int getBaseRate() const
Definition juce_AudioPlayHead.h:93
bool isDrop() const
Definition juce_AudioPlayHead.h:96
double getEffectiveRate() const
Definition juce_AudioPlayHead.h:102
FrameRate with(Member &&member, Value &&value) const
Definition juce_AudioPlayHead.h:144
Definition juce_AudioPlayHead.h:318
double timeInSeconds
Definition juce_AudioPlayHead.h:491
void setBpm(Optional< double > bpmIn)
Definition juce_AudioPlayHead.h:336
@ flagPpqPosition
Definition juce_AudioPlayHead.h:477
@ flagLoopPoints
Definition juce_AudioPlayHead.h:473
@ flagIsLooping
Definition juce_AudioPlayHead.h:485
@ flagTimeSamples
Definition juce_AudioPlayHead.h:480
@ flagTimeSeconds
Definition juce_AudioPlayHead.h:475
@ flagBarCount
Definition juce_AudioPlayHead.h:481
@ flagHostTimeNs
Definition juce_AudioPlayHead.h:482
@ flagOriginTime
Definition juce_AudioPlayHead.h:478
@ flagIsRecording
Definition juce_AudioPlayHead.h:484
@ flagTempo
Definition juce_AudioPlayHead.h:479
@ flagIsPlaying
Definition juce_AudioPlayHead.h:483
@ flagLastBarStartPpq
Definition juce_AudioPlayHead.h:476
@ flagTimeSignature
Definition juce_AudioPlayHead.h:472
@ flagFrameRate
Definition juce_AudioPlayHead.h:474
void setOptional(int64_t flagToCheck, Value &value, Optional< Value > opt)
Definition juce_AudioPlayHead.h:462
int64_t barCount
Definition juce_AudioPlayHead.h:497
double originTime
Definition juce_AudioPlayHead.h:494
void setIsRecording(bool isRecordingIn)
Definition juce_AudioPlayHead.h:408
void setTimeInSamples(Optional< int64_t > timeInSamplesIn)
Definition juce_AudioPlayHead.h:324
bool getIsRecording() const
Definition juce_AudioPlayHead.h:405
Optional< double > getBpm() const
Definition juce_AudioPlayHead.h:333
double lastBarStartPpq
Definition juce_AudioPlayHead.h:492
double tempoBpm
Definition juce_AudioPlayHead.h:495
Optional< int64_t > getTimeInSamples() const
Definition juce_AudioPlayHead.h:321
void setHostTimeNs(Optional< uint64_t > hostTimeNsIn)
Definition juce_AudioPlayHead.h:393
void setLoopPoints(Optional< LoopPoints > loopPointsIn)
Definition juce_AudioPlayHead.h:348
Optional< double > getPpqPositionOfLastBarStart() const
Definition juce_AudioPlayHead.h:366
void setPpqPositionOfLastBarStart(Optional< double > positionIn)
Definition juce_AudioPlayHead.h:369
bool getFlag(int64_t flagToCheck) const
Definition juce_AudioPlayHead.h:445
void setBarCount(Optional< int64_t > barCountIn)
Definition juce_AudioPlayHead.h:357
uint64_t hostTimeNs
Definition juce_AudioPlayHead.h:498
LoopPoints loopPoints
Definition juce_AudioPlayHead.h:489
void setPpqPosition(Optional< double > ppqPositionIn)
Definition juce_AudioPlayHead.h:381
void setFlag(int64_t flagToCheck, bool value)
Definition juce_AudioPlayHead.h:450
TimeSignature timeSignature
Definition juce_AudioPlayHead.h:488
void setTimeInSeconds(Optional< double > timeInSecondsIn)
Definition juce_AudioPlayHead.h:330
int64_t flags
Definition juce_AudioPlayHead.h:499
Optional< uint64_t > getHostTimeNs() const
Definition juce_AudioPlayHead.h:390
int64_t timeInSamples
Definition juce_AudioPlayHead.h:496
Optional< double > getPpqPosition() const
Definition juce_AudioPlayHead.h:378
void setIsLooping(bool isLoopingIn)
Definition juce_AudioPlayHead.h:414
Optional< TimeSignature > getTimeSignature() const
Definition juce_AudioPlayHead.h:339
FrameRate frame
Definition juce_AudioPlayHead.h:490
Optional< LoopPoints > getLoopPoints() const
Definition juce_AudioPlayHead.h:345
Optional< double > getTimeInSeconds() const
Definition juce_AudioPlayHead.h:327
bool getIsPlaying() const
Definition juce_AudioPlayHead.h:396
void setTimeSignature(Optional< TimeSignature > timeSignatureIn)
Definition juce_AudioPlayHead.h:342
double positionPpq
Definition juce_AudioPlayHead.h:493
void setFrameRate(Optional< FrameRate > frameRateIn)
Definition juce_AudioPlayHead.h:375
void setEditOriginTime(Optional< double > editOriginTimeIn)
Definition juce_AudioPlayHead.h:387
void setIsPlaying(bool isPlayingIn)
Definition juce_AudioPlayHead.h:399
Optional< Value > getOptional(int64_t flagToCheck, Value value) const
Definition juce_AudioPlayHead.h:456
Optional< double > getEditOriginTime() const
Definition juce_AudioPlayHead.h:384
Optional< int64_t > getBarCount() const
Definition juce_AudioPlayHead.h:354
Optional< FrameRate > getFrameRate() const
Definition juce_AudioPlayHead.h:372
bool getIsLooping() const
Definition juce_AudioPlayHead.h:411
virtual Optional< PositionInfo > getPosition() const =0
virtual bool canControlTransport()
Definition juce_AudioPlayHead.h:581
FrameRateType
Definition juce_AudioPlayHead.h:50
@ fps24
Definition juce_AudioPlayHead.h:52
@ fps60drop
Definition juce_AudioPlayHead.h:59
@ fps23976
Definition juce_AudioPlayHead.h:51
@ fps2997
Definition juce_AudioPlayHead.h:54
@ fpsUnknown
Definition juce_AudioPlayHead.h:60
@ fps25
Definition juce_AudioPlayHead.h:53
@ fps30drop
Definition juce_AudioPlayHead.h:57
@ fps2997drop
Definition juce_AudioPlayHead.h:56
@ fps30
Definition juce_AudioPlayHead.h:55
@ fps60
Definition juce_AudioPlayHead.h:58
virtual void transportPlay(bool shouldStartPlaying)
Definition juce_AudioPlayHead.h:584
virtual void transportRecord(bool shouldStartRecording)
Definition juce_AudioPlayHead.h:587
bool getCurrentPosition(CurrentPositionInfo &result)
Definition juce_AudioPlayHead.h:516
virtual ~AudioPlayHead()=default
virtual void transportRewind()
Definition juce_AudioPlayHead.h:590
Definition juce_Optional.h:74
bool hasValue() const noexcept
Definition juce_Optional.h:219
Definition juce_Value.h:51
register unsigned i
Definition inflate.c:1575
unsigned x[BMAX+1]
Definition inflate.c:1586
static PuglViewHint int value
Definition pugl.h:1708
#define JUCE_NODISCARD
Definition juce_CompilerSupport.h:108
#define JUCE_API
Definition juce_StandardHeader.h:152
Definition carla_juce.cpp:31
JUCE_END_IGNORE_WARNINGS_MSVC Optional< std::decay_t< Value > > makeOptional(Value &&v)
Definition juce_Optional.h:298
static auto tie(const AudioDeviceManager::AudioDeviceSetup &s)
Definition juce_AudioDeviceManager.cpp:41
long long int64
Definition juce_MathsFunctions.h:54
void ignoreUnused(Types &&...) noexcept
Definition juce_MathsFunctions.h:333
constexpr Nullopt nullopt
Definition juce_Optional.h:48
Definition juce_AudioPlayHead.h:211
int timeSigDenominator
Definition juce_AudioPlayHead.h:219
double ppqPositionOfLastBarStart
Definition juce_AudioPlayHead.h:240
double ppqLoopEnd
Definition juce_AudioPlayHead.h:264
void resetToDefault()
Definition juce_AudioPlayHead.h:297
int timeSigNumerator
Definition juce_AudioPlayHead.h:216
double ppqLoopStart
Definition juce_AudioPlayHead.h:258
bool isPlaying
Definition juce_AudioPlayHead.h:246
double ppqPosition
Definition juce_AudioPlayHead.h:230
FrameRate frameRate
Definition juce_AudioPlayHead.h:243
double bpm
Definition juce_AudioPlayHead.h:213
bool isLooping
Definition juce_AudioPlayHead.h:267
int64 timeInSamples
Definition juce_AudioPlayHead.h:222
double editOriginTime
Definition juce_AudioPlayHead.h:227
double timeInSeconds
Definition juce_AudioPlayHead.h:224
bool isRecording
Definition juce_AudioPlayHead.h:252
Definition juce_AudioPlayHead.h:184
double ppqEnd
Definition juce_AudioPlayHead.h:189
double ppqStart
Definition juce_AudioPlayHead.h:186
Definition juce_AudioPlayHead.h:160
int numerator
Definition juce_AudioPlayHead.h:162
int denominator
Definition juce_AudioPlayHead.h:165
int result
Definition process.c:1455