#define DCPOMATIC_TYPES_H
#include <vector>
+#include <stdint.h>
#include <boost/shared_ptr.hpp>
#include <libdcp/util.h>
class Content;
+typedef int64_t Time;
+#define TIME_MAX INT64_MAX
+#define TIME_HZ ((Time) 96000)
+typedef int64_t OutputAudioFrame;
+typedef int OutputVideoFrame;
typedef std::vector<boost::shared_ptr<Content> > ContentList;
-typedef int64_t ContentAudioFrame;
-typedef int ContentVideoFrame;
-typedef double Time;
/** @struct Crop
* @brief A description of the crop of an image or video.
extern bool operator== (Crop const & a, Crop const & b);
extern bool operator!= (Crop const & a, Crop const & b);
-/** @struct Position
- * @brief A position.
- */
-struct Position
-{
- Position ()
- : x (0)
- , y (0)
- {}
-
- Position (int x_, int y_)
- : x (x_)
- , y (y_)
- {}
-
- /** x coordinate */
- int x;
- /** y coordinate */
- int y;
+enum Resolution {
+ RESOLUTION_2K,
+ RESOLUTION_4K
};
-/** @struct Rect
- * @brief A rectangle.
- */
-struct Rect
-{
- Rect ()
- : x (0)
- , y (0)
- , width (0)
- , height (0)
- {}
-
- Rect (int x_, int y_, int w_, int h_)
- : x (x_)
- , y (y_)
- , width (w_)
- , height (h_)
- {}
-
- int x;
- int y;
- int width;
- int height;
-
- Position position () const {
- return Position (x, y);
- }
-
- libdcp::Size size () const {
- return libdcp::Size (width, height);
- }
-
- Rect intersection (Rect const & other) const;
-};
+std::string resolution_to_string (Resolution);
+Resolution string_to_resolution (std::string);
#endif