projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Try to fix windows build.
[dcpomatic.git]
/
src
/
lib
/
types.h
diff --git
a/src/lib/types.h
b/src/lib/types.h
index b1b359810e87219ff7c67777f447e2f52a965848..d4d66387d0c5c17c08183b1f04aecfe6ce2cebff 100644
(file)
--- a/
src/lib/types.h
+++ b/
src/lib/types.h
@@
-26,6
+26,13
@@
#include <libdcp/util.h>
class Content;
#include <libdcp/util.h>
class Content;
+class AudioBuffers;
+
+/** The version number of the protocol used to communicate
+ * with servers. Intended to be bumped when incompatibilities
+ * are introduced.
+ */
+#define SERVER_LINK_VERSION 1
typedef int64_t Time;
#define TIME_MAX INT64_MAX
typedef int64_t Time;
#define TIME_MAX INT64_MAX
@@
-34,18
+41,43
@@
typedef int64_t OutputAudioFrame;
typedef int OutputVideoFrame;
typedef std::vector<boost::shared_ptr<Content> > ContentList;
typedef int OutputVideoFrame;
typedef std::vector<boost::shared_ptr<Content> > ContentList;
+template<class T>
+struct TimedAudioBuffers
+{
+ TimedAudioBuffers ()
+ : time (0)
+ {}
+
+ TimedAudioBuffers (boost::shared_ptr<AudioBuffers> a, T t)
+ : audio (a)
+ , time (t)
+ {}
+
+ boost::shared_ptr<AudioBuffers> audio;
+ T time;
+};
+
enum VideoFrameType
{
VIDEO_FRAME_TYPE_2D,
VIDEO_FRAME_TYPE_3D_LEFT_RIGHT
};
enum VideoFrameType
{
VIDEO_FRAME_TYPE_2D,
VIDEO_FRAME_TYPE_3D_LEFT_RIGHT
};
+enum Eyes
+{
+ EYES_BOTH,
+ EYES_LEFT,
+ EYES_RIGHT,
+ EYES_COUNT
+};
+
/** @struct Crop
* @brief A description of the crop of an image or video.
*/
struct Crop
{
Crop () : left (0), right (0), top (0), bottom (0) {}
/** @struct Crop
* @brief A description of the crop of an image or video.
*/
struct Crop
{
Crop () : left (0), right (0), top (0), bottom (0) {}
+ Crop (int l, int r, int t, int b) : left (l), right (r), top (t), bottom (b) {}
/** Number of pixels to remove from the left-hand side */
int left;
/** Number of pixels to remove from the left-hand side */
int left;
@@
-55,6
+87,21
@@
struct Crop
int top;
/** Number of pixels to remove from the bottom */
int bottom;
int top;
/** Number of pixels to remove from the bottom */
int bottom;
+
+ libdcp::Size apply (libdcp::Size s, int minimum = 4) const {
+ s.width -= left + right;
+ s.height -= top + bottom;
+
+ if (s.width < minimum) {
+ s.width = minimum;
+ }
+
+ if (s.height < minimum) {
+ s.height = minimum;
+ }
+
+ return s;
+ }
};
extern bool operator== (Crop const & a, Crop const & b);
};
extern bool operator== (Crop const & a, Crop const & b);