projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix dying butler on changing CPL from one without to one with
[dcpomatic.git]
/
src
/
lib
/
image_proxy.h
diff --git
a/src/lib/image_proxy.h
b/src/lib/image_proxy.h
index f9a06d1b701c7c84b1979f52375cbb6c74769f4e..b6fe877321ecc06d460faf283522997d4a22c8dc 100644
(file)
--- a/
src/lib/image_proxy.h
+++ b/
src/lib/image_proxy.h
@@
-60,13
+60,14
@@
class ImageProxy : public boost::noncopyable
public:
virtual ~ImageProxy () {}
public:
virtual ~ImageProxy () {}
- /** @param
note Handler for any notes that occur
.
+ /** @param
log Log to write to, or 0
.
* @param size Size that the returned image will be scaled to, in case this
* can be used as an optimisation.
* @param size Size that the returned image will be scaled to, in case this
* can be used as an optimisation.
- * @return Image (which must be aligned)
+ * @return Image (which must be aligned) and log2 of any scaling down that has
+ * already been applied to the image; e.g. if the the image is already half the size
+ * of the original, the second part of the return value will be 1.
*/
*/
- virtual boost::shared_ptr<Image> image (
- boost::optional<dcp::NoteHandler> note = boost::optional<dcp::NoteHandler> (),
+ virtual std::pair<boost::shared_ptr<Image>, int> image (
boost::optional<dcp::Size> size = boost::optional<dcp::Size> ()
) const = 0;
boost::optional<dcp::Size> size = boost::optional<dcp::Size> ()
) const = 0;
@@
-76,9
+77,10
@@
public:
virtual bool same (boost::shared_ptr<const ImageProxy>) const = 0;
/** Do any useful work that would speed up a subsequent call to ::image().
* This method may be called in a different thread to image().
virtual bool same (boost::shared_ptr<const ImageProxy>) const = 0;
/** Do any useful work that would speed up a subsequent call to ::image().
* This method may be called in a different thread to image().
+ * @return log2 of any scaling down that will be applied to the image.
*/
*/
- virtual
void prepare (boost::optional<dcp::Size> = boost::optional<dcp::Size>()) const {
}
- virtual
AVPixelFormat pixel_format
() const = 0;
+ virtual
int prepare (boost::optional<dcp::Size> = boost::optional<dcp::Size>()) const { return 0;
}
+ virtual
size_t memory_used
() const = 0;
};
boost::shared_ptr<ImageProxy> image_proxy_factory (boost::shared_ptr<cxml::Node> xml, boost::shared_ptr<Socket> socket);
};
boost::shared_ptr<ImageProxy> image_proxy_factory (boost::shared_ptr<cxml::Node> xml, boost::shared_ptr<Socket> socket);