X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmono_picture_asset.h;h=a10eada00f1261548ce83e6d4e92c8ea21f9a789;hb=2ae92dcc97765deb2845dd07a338858aeb375cb3;hp=d2029e00642710d0d558f240009cf156ecc3175c;hpb=d86d3f66f88623bea44033db4855206dd3a5e830;p=libdcp.git diff --git a/src/mono_picture_asset.h b/src/mono_picture_asset.h index d2029e00..a10eada0 100644 --- a/src/mono_picture_asset.h +++ b/src/mono_picture_asset.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2012-2013 Carl Hetherington + Copyright (C) 2012-2015 Carl Hetherington This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -22,31 +22,41 @@ #include "picture_asset.h" -namespace libdcp { +namespace dcp { -/** A 2D (monoscopic) picture asset */ +class MonoPictureAssetWriter; + +/** @class MonoPictureAsset + * @brief A 2D (monoscopic) picture asset. + */ class MonoPictureAsset : public PictureAsset { public: - MonoPictureAsset (boost::filesystem::path directory, boost::filesystem::path mxf_name); + /** Create a MonoPictureAsset by reading a file. + * @param file Asset file to read. + */ + MonoPictureAsset (boost::filesystem::path file); - void read (); - void create (std::vector const & files); - void create (boost::function get_path); + /** Create a MonoPictureAsset with a given edit rate. + * @param edit_rate Edit rate (i.e. frame rate) in frames per second. + */ + MonoPictureAsset (Fraction edit_rate); /** Start a progressive write to a MonoPictureAsset */ - boost::shared_ptr start_write (bool); + boost::shared_ptr start_write (boost::filesystem::path, Standard standard, bool); + + bool equals ( + boost::shared_ptr other, + EqualityOptions opt, + NoteHandler note + ) const; boost::shared_ptr get_frame (int n) const; - bool equals (boost::shared_ptr other, EqualityOptions opt, boost::function note) const; private: - boost::filesystem::path path_from_list (int f, std::vector const & files) const; - void construct (boost::function, bool, MXFMetadata const &); std::string cpl_node_name () const; - int edit_rate_factor () const; }; -} +} #endif