/*
- Copyright (C) 2014-2015 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2014-2021 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
*/
+
#ifndef DCPOMATIC_RAW_IMAGE_PROXY_H
#define DCPOMATIC_RAW_IMAGE_PROXY_H
+
#include "image_proxy.h"
+
class RawImageProxy : public ImageProxy
{
public:
- explicit RawImageProxy (boost::shared_ptr<Image>);
- RawImageProxy (boost::shared_ptr<cxml::Node> xml, boost::shared_ptr<Socket> socket);
+ explicit RawImageProxy(std::shared_ptr<const Image>);
+ RawImageProxy (std::shared_ptr<cxml::Node> xml, std::shared_ptr<Socket> socket);
- std::pair<boost::shared_ptr<Image>, int> image (
+ Result image (
+ Image::Alignment alignment,
boost::optional<dcp::Size> size = boost::optional<dcp::Size> ()
- ) const;
+ ) const override;
- void add_metadata (xmlpp::Node *) const;
- void send_binary (boost::shared_ptr<Socket>) const;
- bool same (boost::shared_ptr<const ImageProxy>) const;
- size_t memory_used () const;
+ void add_metadata (xmlpp::Node *) const override;
+ void write_to_socket (std::shared_ptr<Socket>) const override;
+ bool same (std::shared_ptr<const ImageProxy>) const override;
+ size_t memory_used () const override;
private:
- boost::shared_ptr<Image> _image;
+ std::shared_ptr<const Image> _image;
};
+
#endif