openshot-audio  0.1.7
juce_AudioPlayHead.h
Go to the documentation of this file.
1 /*
2  ==============================================================================
3 
4  This file is part of the JUCE library.
5  Copyright (c) 2015 - ROLI Ltd.
6 
7  Permission is granted to use this software under the terms of either:
8  a) the GPL v2 (or any later version)
9  b) the Affero GPL v3
10 
11  Details of these licenses can be found at: www.gnu.org/licenses
12 
13  JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
14  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
15  A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16 
17  ------------------------------------------------------------------------------
18 
19  To release a closed-source product which uses JUCE, commercial licenses are
20  available: visit www.juce.com for more information.
21 
22  ==============================================================================
23 */
24 
25 #ifndef JUCE_AUDIOPLAYHEAD_H_INCLUDED
26 #define JUCE_AUDIOPLAYHEAD_H_INCLUDED
27 
28 
29 //==============================================================================
40 {
41 protected:
42  //==============================================================================
44 
45 public:
46  virtual ~AudioPlayHead() {}
47 
48  //==============================================================================
51  {
52  fps24 = 0,
53  fps25 = 1,
54  fps2997 = 2,
55  fps30 = 3,
56  fps2997drop = 4,
57  fps30drop = 5,
58  fpsUnknown = 99
59  };
60 
61  //==============================================================================
65  {
67  double bpm;
68 
73 
77  double timeInSeconds;
78 
81 
83  double ppqPosition;
84 
94 
97 
99  bool isPlaying;
100 
106 
111  double ppqLoopStart;
112 
117  double ppqLoopEnd;
118 
120  bool isLooping;
121 
122  //==============================================================================
123  bool operator== (const CurrentPositionInfo& other) const noexcept;
124  bool operator!= (const CurrentPositionInfo& other) const noexcept;
125 
126  void resetToDefault();
127  };
128 
129  //==============================================================================
140  virtual bool getCurrentPosition (CurrentPositionInfo& result) = 0;
141 };
142 
143 
144 #endif // JUCE_AUDIOPLAYHEAD_H_INCLUDED
AudioPlayHead::CurrentPositionInfo::bpm
double bpm
Definition: juce_AudioPlayHead.h:67
operator==
bool operator==(const var &v1, const var &v2) noexcept
Definition: juce_Variant.cpp:565
AudioPlayHead::CurrentPositionInfo::ppqPosition
double ppqPosition
Definition: juce_AudioPlayHead.h:83
AudioPlayHead
Definition: juce_AudioPlayHead.h:39
AudioPlayHead::CurrentPositionInfo::isLooping
bool isLooping
Definition: juce_AudioPlayHead.h:120
AudioPlayHead::CurrentPositionInfo::isPlaying
bool isPlaying
Definition: juce_AudioPlayHead.h:99
AudioPlayHead::CurrentPositionInfo::timeSigNumerator
int timeSigNumerator
Definition: juce_AudioPlayHead.h:70
AudioPlayHead::CurrentPositionInfo::ppqPositionOfLastBarStart
double ppqPositionOfLastBarStart
Definition: juce_AudioPlayHead.h:93
JUCE_API
#define JUCE_API
Definition: juce_StandardHeader.h:139
AudioPlayHead::CurrentPositionInfo::editOriginTime
double editOriginTime
Definition: juce_AudioPlayHead.h:80
noexcept
#define noexcept
Definition: juce_CompilerSupport.h:141
AudioPlayHead::FrameRateType
FrameRateType
Definition: juce_AudioPlayHead.h:50
AudioPlayHead::CurrentPositionInfo::ppqLoopEnd
double ppqLoopEnd
Definition: juce_AudioPlayHead.h:117
AudioPlayHead::CurrentPositionInfo::timeSigDenominator
int timeSigDenominator
Definition: juce_AudioPlayHead.h:72
AudioPlayHead::CurrentPositionInfo::isRecording
bool isRecording
Definition: juce_AudioPlayHead.h:105
AudioPlayHead::~AudioPlayHead
virtual ~AudioPlayHead()
Definition: juce_AudioPlayHead.h:46
AudioPlayHead::CurrentPositionInfo::timeInSamples
int64 timeInSamples
Definition: juce_AudioPlayHead.h:75
AudioPlayHead::CurrentPositionInfo
Definition: juce_AudioPlayHead.h:64
AudioPlayHead::AudioPlayHead
AudioPlayHead()
Definition: juce_AudioPlayHead.h:43
AudioPlayHead::CurrentPositionInfo::ppqLoopStart
double ppqLoopStart
Definition: juce_AudioPlayHead.h:111
AudioPlayHead::CurrentPositionInfo::timeInSeconds
double timeInSeconds
Definition: juce_AudioPlayHead.h:77
int64
long long int64
Definition: juce_MathsFunctions.h:60
AudioPlayHead::CurrentPositionInfo::frameRate
FrameRateType frameRate
Definition: juce_AudioPlayHead.h:96
operator!=
bool operator!=(const var &v1, const var &v2) noexcept
Definition: juce_Variant.cpp:566