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
bool isPlaying
Definition: juce_AudioPlayHead.h:99
#define noexcept
Definition: juce_CompilerSupport.h:141
int timeSigDenominator
Definition: juce_AudioPlayHead.h:72
FrameRateType frameRate
Definition: juce_AudioPlayHead.h:96
Definition: juce_AudioPlayHead.h:64
#define JUCE_API
Definition: juce_StandardHeader.h:139
double ppqLoopEnd
Definition: juce_AudioPlayHead.h:117
Definition: juce_AudioPlayHead.h:39
double editOriginTime
Definition: juce_AudioPlayHead.h:80
double bpm
Definition: juce_AudioPlayHead.h:67
long long int64
Definition: juce_MathsFunctions.h:60
bool isLooping
Definition: juce_AudioPlayHead.h:120
virtual ~AudioPlayHead()
Definition: juce_AudioPlayHead.h:46
AudioPlayHead()
Definition: juce_AudioPlayHead.h:43
double timeInSeconds
Definition: juce_AudioPlayHead.h:77
FrameRateType
Definition: juce_AudioPlayHead.h:50
bool operator==(const var &v1, const var &v2) noexcept
Definition: juce_Variant.cpp:565
bool isRecording
Definition: juce_AudioPlayHead.h:105
double ppqPosition
Definition: juce_AudioPlayHead.h:83
int64 timeInSamples
Definition: juce_AudioPlayHead.h:75
double ppqPositionOfLastBarStart
Definition: juce_AudioPlayHead.h:93
int timeSigNumerator
Definition: juce_AudioPlayHead.h:70
bool operator!=(const var &v1, const var &v2) noexcept
Definition: juce_Variant.cpp:566
double ppqLoopStart
Definition: juce_AudioPlayHead.h:111