diff options
| author | Carl Hetherington <cth@carlh.net> | 2021-01-04 21:16:53 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2021-01-07 22:48:29 +0100 |
| commit | dd9be86db6cde0afa5da0d1d1ac43b42e05dca26 (patch) | |
| tree | e56a3f82fb9e1c8602f265bea0d0688d8a018644 /src/lib | |
| parent | 0d35820cf50d2789752b8776683b26d04642518d (diff) | |
std::shared_ptr
Diffstat (limited to 'src/lib')
248 files changed, 792 insertions, 829 deletions
diff --git a/src/lib/active_text.cc b/src/lib/active_text.cc index 3a7e1a27e..30f3b8ca6 100644 --- a/src/lib/active_text.cc +++ b/src/lib/active_text.cc @@ -18,16 +18,16 @@ */ + #include "active_text.h" #include "text_content.h" -#include <boost/shared_ptr.hpp> -#include <boost/weak_ptr.hpp> + using std::list; using std::pair; using std::make_pair; -using boost::weak_ptr; -using boost::shared_ptr; +using std::weak_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/active_text.h b/src/lib/active_text.h index 90b6b533b..f5211ae7f 100644 --- a/src/lib/active_text.h +++ b/src/lib/active_text.h @@ -40,9 +40,9 @@ public: std::list<PlayerText> get_burnt (dcpomatic::DCPTimePeriod period, bool always_burn_captions) const; void clear_before (dcpomatic::DCPTime time); void clear (); - void add_from (boost::weak_ptr<const TextContent> content, PlayerText ps, dcpomatic::DCPTime from); - std::pair<PlayerText, dcpomatic::DCPTime> add_to (boost::weak_ptr<const TextContent> content, dcpomatic::DCPTime to); - bool have (boost::weak_ptr<const TextContent> content) const; + void add_from (std::weak_ptr<const TextContent> content, PlayerText ps, dcpomatic::DCPTime from); + std::pair<PlayerText, dcpomatic::DCPTime> add_to (std::weak_ptr<const TextContent> content, dcpomatic::DCPTime to); + bool have (std::weak_ptr<const TextContent> content) const; private: class Period @@ -60,7 +60,7 @@ private: boost::optional<dcpomatic::DCPTime> to; }; - typedef std::map<boost::weak_ptr<const TextContent>, std::list<Period> > Map; + typedef std::map<std::weak_ptr<const TextContent>, std::list<Period>, std::owner_less<std::weak_ptr<const TextContent>>> Map; mutable boost::mutex _mutex; Map _data; diff --git a/src/lib/analyse_audio_job.cc b/src/lib/analyse_audio_job.cc index 6ba6b5ecf..0d6a5e8b8 100644 --- a/src/lib/analyse_audio_job.cc +++ b/src/lib/analyse_audio_job.cc @@ -47,8 +47,8 @@ using std::vector; using std::max; using std::min; using std::cout; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using namespace dcpomatic; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; diff --git a/src/lib/analyse_audio_job.h b/src/lib/analyse_audio_job.h index 8f88b0fa1..81287d2d2 100644 --- a/src/lib/analyse_audio_job.h +++ b/src/lib/analyse_audio_job.h @@ -46,7 +46,7 @@ class Filter; class AnalyseAudioJob : public Job { public: - AnalyseAudioJob (boost::shared_ptr<const Film>, boost::shared_ptr<const Playlist>, bool from_zero); + AnalyseAudioJob (std::shared_ptr<const Film>, std::shared_ptr<const Playlist>, bool from_zero); ~AnalyseAudioJob (); std::string name () const; @@ -58,9 +58,9 @@ public: } private: - void analyse (boost::shared_ptr<const AudioBuffers>, dcpomatic::DCPTime time); + void analyse (std::shared_ptr<const AudioBuffers>, dcpomatic::DCPTime time); - boost::shared_ptr<const Playlist> _playlist; + std::shared_ptr<const Playlist> _playlist; /** playlist's audio analysis path when the job was created */ boost::filesystem::path _path; dcpomatic::DCPTime _start; @@ -73,9 +73,9 @@ private: float* _sample_peak; Frame* _sample_peak_frame; - boost::shared_ptr<AudioAnalysis> _analysis; + std::shared_ptr<AudioAnalysis> _analysis; - boost::shared_ptr<AudioFilterGraph> _ebur128; + std::shared_ptr<AudioFilterGraph> _ebur128; std::vector<Filter const *> _filters; boost::scoped_ptr<leqm_nrt::Calculator> _leqm; diff --git a/src/lib/analyse_subtitles_job.cc b/src/lib/analyse_subtitles_job.cc index 92fb9657c..df3cb3181 100644 --- a/src/lib/analyse_subtitles_job.cc +++ b/src/lib/analyse_subtitles_job.cc @@ -31,8 +31,8 @@ #include "i18n.h" using std::string; -using boost::shared_ptr; -using boost::weak_ptr; +using std::shared_ptr; +using std::weak_ptr; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; #endif diff --git a/src/lib/analyse_subtitles_job.h b/src/lib/analyse_subtitles_job.h index 88b5d23dc..5ad9dd4a4 100644 --- a/src/lib/analyse_subtitles_job.h +++ b/src/lib/analyse_subtitles_job.h @@ -28,7 +28,7 @@ class Content; class AnalyseSubtitlesJob : public Job { public: - AnalyseSubtitlesJob (boost::shared_ptr<const Film> film, boost::shared_ptr<Content> content); + AnalyseSubtitlesJob (std::shared_ptr<const Film> film, std::shared_ptr<Content> content); std::string name () const; std::string json_name () const; @@ -41,7 +41,7 @@ public: private: void analyse (PlayerText text, TextType type); - boost::weak_ptr<Content> _content; + std::weak_ptr<Content> _content; boost::filesystem::path _path; boost::optional<dcpomatic::Rect<double> > _bounding_box; }; diff --git a/src/lib/atmos_content.cc b/src/lib/atmos_content.cc index 0543437a3..e69474e01 100644 --- a/src/lib/atmos_content.cc +++ b/src/lib/atmos_content.cc @@ -28,7 +28,7 @@ DCPOMATIC_ENABLE_WARNINGS using std::string; -using boost::shared_ptr; +using std::shared_ptr; int const AtmosContentProperty::EDIT_RATE = 700; diff --git a/src/lib/atmos_content.h b/src/lib/atmos_content.h index 0344b6225..948c3d3c0 100644 --- a/src/lib/atmos_content.h +++ b/src/lib/atmos_content.h @@ -37,7 +37,7 @@ class AtmosContent : public ContentPart public: AtmosContent (Content* parent); - static boost::shared_ptr<AtmosContent> from_xml (Content* parent, cxml::ConstNodePtr node); + static std::shared_ptr<AtmosContent> from_xml (Content* parent, cxml::ConstNodePtr node); void as_xml (xmlpp::Node* node) const; diff --git a/src/lib/atmos_decoder.cc b/src/lib/atmos_decoder.cc index 4ebb07f8a..51ee7f0a4 100644 --- a/src/lib/atmos_decoder.cc +++ b/src/lib/atmos_decoder.cc @@ -27,7 +27,7 @@ #include "film.h" -using boost::shared_ptr; +using std::shared_ptr; AtmosDecoder::AtmosDecoder (Decoder* parent, shared_ptr<const Content> content) diff --git a/src/lib/atmos_decoder.h b/src/lib/atmos_decoder.h index 3003d5a07..935fd9925 100644 --- a/src/lib/atmos_decoder.h +++ b/src/lib/atmos_decoder.h @@ -28,19 +28,19 @@ class AtmosDecoder : public DecoderPart { public: - AtmosDecoder (Decoder* parent, boost::shared_ptr<const Content> content); + AtmosDecoder (Decoder* parent, std::shared_ptr<const Content> content); - boost::optional<dcpomatic::ContentTime> position (boost::shared_ptr<const Film>) const { + boost::optional<dcpomatic::ContentTime> position (std::shared_ptr<const Film>) const { return _position; } void seek (); - void emit (boost::shared_ptr<const Film> film, boost::shared_ptr<const dcp::AtmosFrame> data, Frame frame, AtmosMetadata metadata); + void emit (std::shared_ptr<const Film> film, std::shared_ptr<const dcp::AtmosFrame> data, Frame frame, AtmosMetadata metadata); boost::signals2::signal<void (ContentAtmos)> Data; private: - boost::shared_ptr<const Content> _content; + std::shared_ptr<const Content> _content; boost::optional<dcpomatic::ContentTime> _position; }; diff --git a/src/lib/atmos_metadata.cc b/src/lib/atmos_metadata.cc index 0a4b4f1b1..0fe23f3b0 100644 --- a/src/lib/atmos_metadata.cc +++ b/src/lib/atmos_metadata.cc @@ -23,7 +23,7 @@ #include <dcp/atmos_asset.h> -using boost::shared_ptr; +using std::shared_ptr; AtmosMetadata::AtmosMetadata (shared_ptr<const dcp::AtmosAsset> asset) diff --git a/src/lib/atmos_metadata.h b/src/lib/atmos_metadata.h index 4e3fc855f..65f2cc6c2 100644 --- a/src/lib/atmos_metadata.h +++ b/src/lib/atmos_metadata.h @@ -22,13 +22,12 @@ #define DCPOMATIC_ATMOS_METADATA_H #include <dcp/atmos_asset.h> -#include <boost/shared_ptr.hpp> class AtmosMetadata { public: - AtmosMetadata (boost::shared_ptr<const dcp::AtmosAsset> asset); - boost::shared_ptr<dcp::AtmosAsset> create (dcp::Fraction edit_rate) const; + AtmosMetadata (std::shared_ptr<const dcp::AtmosAsset> asset); + std::shared_ptr<dcp::AtmosAsset> create (dcp::Fraction edit_rate) const; private: int _first_frame; diff --git a/src/lib/atmos_mxf_content.cc b/src/lib/atmos_mxf_content.cc index 36ae8871a..3f41a52a0 100644 --- a/src/lib/atmos_mxf_content.cc +++ b/src/lib/atmos_mxf_content.cc @@ -33,7 +33,7 @@ using std::list; using std::string; -using boost::shared_ptr; +using std::shared_ptr; using namespace dcpomatic; AtmosMXFContent::AtmosMXFContent (boost::filesystem::path path) diff --git a/src/lib/atmos_mxf_content.h b/src/lib/atmos_mxf_content.h index 350c4a35d..b485167c5 100644 --- a/src/lib/atmos_mxf_content.h +++ b/src/lib/atmos_mxf_content.h @@ -18,7 +18,10 @@ */ + #include "content.h" +#include <memory> + class AtmosMXFContent : public Content { @@ -26,18 +29,18 @@ public: AtmosMXFContent (boost::filesystem::path path); AtmosMXFContent (cxml::ConstNodePtr node, int version); - boost::shared_ptr<AtmosMXFContent> shared_from_this () { - return boost::dynamic_pointer_cast<AtmosMXFContent> (Content::shared_from_this ()); + std::shared_ptr<AtmosMXFContent> shared_from_this () { + return std::dynamic_pointer_cast<AtmosMXFContent> (Content::shared_from_this()); } - boost::shared_ptr<const AtmosMXFContent> shared_from_this () const { - return boost::dynamic_pointer_cast<const AtmosMXFContent> (Content::shared_from_this ()); + std::shared_ptr<const AtmosMXFContent> shared_from_this () const { + return std::dynamic_pointer_cast<const AtmosMXFContent> (Content::shared_from_this()); } - void examine (boost::shared_ptr<const Film> film, boost::shared_ptr<Job> job); + void examine (std::shared_ptr<const Film> film, std::shared_ptr<Job> job); std::string summary () const; void as_xml (xmlpp::Node* node, bool with_path) const; - dcpomatic::DCPTime full_length (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime full_length (std::shared_ptr<const Film> film) const; dcpomatic::DCPTime approximate_length () const; static bool valid_mxf (boost::filesystem::path path); diff --git a/src/lib/atmos_mxf_decoder.cc b/src/lib/atmos_mxf_decoder.cc index 3f6f4a857..6c7cda61a 100644 --- a/src/lib/atmos_mxf_decoder.cc +++ b/src/lib/atmos_mxf_decoder.cc @@ -26,9 +26,9 @@ #include <dcp/atmos_asset.h> #include <dcp/atmos_asset_reader.h> -using boost::shared_ptr; +using std::shared_ptr; -AtmosMXFDecoder::AtmosMXFDecoder (boost::shared_ptr<const Film> film, boost::shared_ptr<const AtmosMXFContent> content) +AtmosMXFDecoder::AtmosMXFDecoder (std::shared_ptr<const Film> film, std::shared_ptr<const AtmosMXFContent> content) : Decoder (film) , _content (content) { diff --git a/src/lib/atmos_mxf_decoder.h b/src/lib/atmos_mxf_decoder.h index f5b7fe1ee..4e7ce5c6f 100644 --- a/src/lib/atmos_mxf_decoder.h +++ b/src/lib/atmos_mxf_decoder.h @@ -28,15 +28,15 @@ class AtmosMXFContent; class AtmosMXFDecoder : public Decoder { public: - AtmosMXFDecoder (boost::shared_ptr<const Film> film, boost::shared_ptr<const AtmosMXFContent>); + AtmosMXFDecoder (std::shared_ptr<const Film> film, std::shared_ptr<const AtmosMXFContent>); bool pass (); void seek (dcpomatic::ContentTime t, bool accurate); private: - boost::shared_ptr<const AtmosMXFContent> _content; + std::shared_ptr<const AtmosMXFContent> _content; dcpomatic::ContentTime _next; - boost::shared_ptr<dcp::AtmosAssetReader> _reader; + std::shared_ptr<dcp::AtmosAssetReader> _reader; boost::optional<AtmosMetadata> _metadata; }; diff --git a/src/lib/audio_analysis.cc b/src/lib/audio_analysis.cc index f69bcd362..41591b062 100644 --- a/src/lib/audio_analysis.cc +++ b/src/lib/audio_analysis.cc @@ -45,9 +45,9 @@ using std::max; using std::pair; using std::make_pair; using std::list; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using dcp::raw_convert; using namespace dcpomatic; diff --git a/src/lib/audio_analysis.h b/src/lib/audio_analysis.h index 99a69edb4..c3aec6e29 100644 --- a/src/lib/audio_analysis.h +++ b/src/lib/audio_analysis.h @@ -126,7 +126,7 @@ public: void write (boost::filesystem::path); - float gain_correction (boost::shared_ptr<const Playlist> playlist); + float gain_correction (std::shared_ptr<const Playlist> playlist); private: std::vector<std::vector<AudioPoint> > _data; diff --git a/src/lib/audio_buffers.cc b/src/lib/audio_buffers.cc index cfe762659..1de2af2ec 100644 --- a/src/lib/audio_buffers.cc +++ b/src/lib/audio_buffers.cc @@ -27,7 +27,7 @@ #include <stdexcept> using std::bad_alloc; -using boost::shared_ptr; +using std::shared_ptr; /** Construct an AudioBuffers. Audio data is undefined after this constructor. * @param channels Number of channels. @@ -47,13 +47,13 @@ AudioBuffers::AudioBuffers (AudioBuffers const & other) copy_from (&other, other._frames, 0, 0); } -AudioBuffers::AudioBuffers (boost::shared_ptr<const AudioBuffers> other) +AudioBuffers::AudioBuffers (std::shared_ptr<const AudioBuffers> other) { allocate (other->_channels, other->_frames); copy_from (other.get(), other->_frames, 0, 0); } -AudioBuffers::AudioBuffers (boost::shared_ptr<const AudioBuffers> other, int32_t frames_to_copy, int32_t read_offset) +AudioBuffers::AudioBuffers (std::shared_ptr<const AudioBuffers> other, int32_t frames_to_copy, int32_t read_offset) { allocate (other->_channels, frames_to_copy); copy_from (other.get(), frames_to_copy, read_offset, 0); diff --git a/src/lib/audio_buffers.h b/src/lib/audio_buffers.h index 63e4fac9d..7a02b2b0a 100644 --- a/src/lib/audio_buffers.h +++ b/src/lib/audio_buffers.h @@ -22,11 +22,14 @@ * @brief AudioBuffers class. */ + #ifndef DCPOMATIC_AUDIO_BUFFERS_H #define DCPOMATIC_AUDIO_BUFFERS_H -#include <boost/shared_ptr.hpp> + #include <stdint.h> +#include <memory> + /** @class AudioBuffers * @brief A class to hold multi-channel audio data in float format. @@ -40,14 +43,14 @@ class AudioBuffers public: AudioBuffers (int channels, int32_t frames); AudioBuffers (AudioBuffers const &); - explicit AudioBuffers (boost::shared_ptr<const AudioBuffers>); - AudioBuffers (boost::shared_ptr<const AudioBuffers> other, int32_t frames_to_copy, int32_t read_offset); + explicit AudioBuffers (std::shared_ptr<const AudioBuffers>); + AudioBuffers (std::shared_ptr<const AudioBuffers> other, int32_t frames_to_copy, int32_t read_offset); ~AudioBuffers (); AudioBuffers & operator= (AudioBuffers const &); - boost::shared_ptr<AudioBuffers> clone () const; - boost::shared_ptr<AudioBuffers> channel (int) const; + std::shared_ptr<AudioBuffers> clone () const; + std::shared_ptr<AudioBuffers> channel (int) const; void ensure_size (int32_t); @@ -78,7 +81,7 @@ public: void move (int32_t frames, int32_t from, int32_t to); void accumulate_channel (AudioBuffers const * from, int from_channel, int to_channel, float gain = 1); void accumulate_frames (AudioBuffers const * from, int32_t frames, int32_t read_offset, int32_t write_offset); - void append (boost::shared_ptr<const AudioBuffers> other); + void append (std::shared_ptr<const AudioBuffers> other); void trim_start (int32_t frames); private: diff --git a/src/lib/audio_content.cc b/src/lib/audio_content.cc index 22521c9e9..79a00b249 100644 --- a/src/lib/audio_content.cc +++ b/src/lib/audio_content.cc @@ -39,8 +39,8 @@ using std::fixed; using std::list; using std::pair; using std::setprecision; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::optional; using dcp::raw_convert; using namespace dcpomatic; diff --git a/src/lib/audio_content.h b/src/lib/audio_content.h index b109cc15e..83a5e327e 100644 --- a/src/lib/audio_content.h +++ b/src/lib/audio_content.h @@ -44,15 +44,15 @@ class AudioContent : public ContentPart { public: explicit AudioContent (Content* parent); - AudioContent (Content* parent, std::vector<boost::shared_ptr<Content> >); + AudioContent (Content* parent, std::vector<std::shared_ptr<Content> >); void as_xml (xmlpp::Node *) const; std::string technical_summary () const; - void take_settings_from (boost::shared_ptr<const AudioContent> c); + void take_settings_from (std::shared_ptr<const AudioContent> c); AudioMapping mapping () const; void set_mapping (AudioMapping); - int resampled_frame_rate (boost::shared_ptr<const Film> film) const; + int resampled_frame_rate (std::shared_ptr<const Film> film) const; std::vector<NamedChannel> channel_names () const; void set_gain (double); @@ -68,7 +68,7 @@ public: return _delay; } - std::string processing_description (boost::shared_ptr<const Film> film) const; + std::string processing_description (std::shared_ptr<const Film> film) const; std::vector<AudioStreamPtr> streams () const { boost::mutex::scoped_lock lm (_mutex); @@ -80,12 +80,12 @@ public: void set_streams (std::vector<AudioStreamPtr> streams); AudioStreamPtr stream () const; - void add_properties (boost::shared_ptr<const Film> film, std::list<UserProperty> &) const; + void add_properties (std::shared_ptr<const Film> film, std::list<UserProperty> &) const; - void modify_position (boost::shared_ptr<const Film> film, dcpomatic::DCPTime& pos) const; + void modify_position (std::shared_ptr<const Film> film, dcpomatic::DCPTime& pos) const; void modify_trim_start (dcpomatic::ContentTime& pos) const; - static boost::shared_ptr<AudioContent> from_xml (Content* parent, cxml::ConstNodePtr, int version); + static std::shared_ptr<AudioContent> from_xml (Content* parent, cxml::ConstNodePtr, int version); private: diff --git a/src/lib/audio_decoder.cc b/src/lib/audio_decoder.cc index 051fb4dd8..5334dfa34 100644 --- a/src/lib/audio_decoder.cc +++ b/src/lib/audio_decoder.cc @@ -33,7 +33,7 @@ using std::cout; using std::map; using std::pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/audio_decoder.h b/src/lib/audio_decoder.h index 897ddb7e4..2b6e3f758 100644 --- a/src/lib/audio_decoder.h +++ b/src/lib/audio_decoder.h @@ -29,7 +29,6 @@ #include "content_audio.h" #include "audio_stream.h" #include "decoder_part.h" -#include <boost/enable_shared_from_this.hpp> #include <boost/signals2.hpp> class AudioBuffers; @@ -42,30 +41,30 @@ class Resampler; /** @class AudioDecoder. * @brief Parent class for audio decoders. */ -class AudioDecoder : public boost::enable_shared_from_this<AudioDecoder>, public DecoderPart +class AudioDecoder : public std::enable_shared_from_this<AudioDecoder>, public DecoderPart { public: - AudioDecoder (Decoder* parent, boost::shared_ptr<const AudioContent> content, bool fast); + AudioDecoder (Decoder* parent, std::shared_ptr<const AudioContent> content, bool fast); - boost::optional<dcpomatic::ContentTime> position (boost::shared_ptr<const Film> film) const; - void emit (boost::shared_ptr<const Film> film, AudioStreamPtr stream, boost::shared_ptr<const AudioBuffers>, dcpomatic::ContentTime, bool time_already_delayed = false); + boost::optional<dcpomatic::ContentTime> position (std::shared_ptr<const Film> film) const; + void emit (std::shared_ptr<const Film> film, AudioStreamPtr stream, std::shared_ptr<const AudioBuffers>, dcpomatic::ContentTime, bool time_already_delayed = false); void seek (); void flush (); - dcpomatic::ContentTime stream_position (boost::shared_ptr<const Film> film, AudioStreamPtr stream) const; + dcpomatic::ContentTime stream_position (std::shared_ptr<const Film> film, AudioStreamPtr stream) const; boost::signals2::signal<void (AudioStreamPtr, ContentAudio)> Data; private: void silence (int milliseconds); - boost::shared_ptr<const AudioContent> _content; + std::shared_ptr<const AudioContent> _content; /** Frame after the last one that was emitted from Data (i.e. at the resampled rate, if applicable) * for each AudioStream. */ typedef std::map<AudioStreamPtr, Frame> PositionMap; PositionMap _positions; - typedef std::map<AudioStreamPtr, boost::shared_ptr<Resampler> > ResamplerMap; + typedef std::map<AudioStreamPtr, std::shared_ptr<Resampler> > ResamplerMap; ResamplerMap _resamplers; bool _fast; diff --git a/src/lib/audio_delay.cc b/src/lib/audio_delay.cc index 391a201a2..167c522e8 100644 --- a/src/lib/audio_delay.cc +++ b/src/lib/audio_delay.cc @@ -24,7 +24,7 @@ #include <iostream> using std::cout; -using boost::shared_ptr; +using std::shared_ptr; AudioDelay::AudioDelay (int samples) : _samples (samples) diff --git a/src/lib/audio_delay.h b/src/lib/audio_delay.h index 44e8c009b..3731013e5 100644 --- a/src/lib/audio_delay.h +++ b/src/lib/audio_delay.h @@ -18,7 +18,9 @@ */ -#include <boost/shared_ptr.hpp> + +#include <memory> + class AudioBuffers; @@ -29,10 +31,10 @@ class AudioDelay { public: explicit AudioDelay (int samples); - boost::shared_ptr<AudioBuffers> run (boost::shared_ptr<const AudioBuffers> in); + std::shared_ptr<AudioBuffers> run (std::shared_ptr<const AudioBuffers> in); void flush (); private: - boost::shared_ptr<AudioBuffers> _tail; + std::shared_ptr<AudioBuffers> _tail; int _samples; }; diff --git a/src/lib/audio_filter.cc b/src/lib/audio_filter.cc index 3d3ecdfbb..24aa244f2 100644 --- a/src/lib/audio_filter.cc +++ b/src/lib/audio_filter.cc @@ -24,7 +24,7 @@ #include <cmath> using std::min; -using boost::shared_ptr; +using std::shared_ptr; /** @return array of floats which the caller must destroy with delete[] */ float * diff --git a/src/lib/audio_filter.h b/src/lib/audio_filter.h index fb7b7b92c..500cfa6e2 100644 --- a/src/lib/audio_filter.h +++ b/src/lib/audio_filter.h @@ -21,7 +21,9 @@ #ifndef DCPOMATIC_AUDIO_FILTER_H #define DCPOMATIC_AUDIO_FILTER_H -#include <boost/shared_ptr.hpp> + +#include <memory> + class AudioBuffers; struct audio_filter_impulse_input_test; @@ -43,7 +45,7 @@ public: virtual ~AudioFilter (); - boost::shared_ptr<AudioBuffers> run (boost::shared_ptr<const AudioBuffers> in); + std::shared_ptr<AudioBuffers> run (std::shared_ptr<const AudioBuffers> in); void flush (); @@ -55,7 +57,7 @@ protected: float* _ir; int _M; - boost::shared_ptr<AudioBuffers> _tail; + std::shared_ptr<AudioBuffers> _tail; }; class LowPassAudioFilter : public AudioFilter diff --git a/src/lib/audio_filter_graph.cc b/src/lib/audio_filter_graph.cc index 0eeeb3c4a..6318c68ab 100644 --- a/src/lib/audio_filter_graph.cc +++ b/src/lib/audio_filter_graph.cc @@ -32,7 +32,7 @@ extern "C" { using std::string; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; AudioFilterGraph::AudioFilterGraph (int sample_rate, int channels) : _sample_rate (sample_rate) diff --git a/src/lib/audio_filter_graph.h b/src/lib/audio_filter_graph.h index fa52741b9..91216c7c3 100644 --- a/src/lib/audio_filter_graph.h +++ b/src/lib/audio_filter_graph.h @@ -31,7 +31,7 @@ public: AudioFilterGraph (int sample_rate, int channels); ~AudioFilterGraph (); - void process (boost::shared_ptr<const AudioBuffers> audio); + void process (std::shared_ptr<const AudioBuffers> audio); protected: std::string src_parameters () const; diff --git a/src/lib/audio_mapping.cc b/src/lib/audio_mapping.cc index 40dc4ebfa..37a3d5fa2 100644 --- a/src/lib/audio_mapping.cc +++ b/src/lib/audio_mapping.cc @@ -39,8 +39,8 @@ using std::string; using std::min; using std::vector; using std::abs; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::optional; using dcp::raw_convert; diff --git a/src/lib/audio_merger.cc b/src/lib/audio_merger.cc index 74bb7717d..347a96f5a 100644 --- a/src/lib/audio_merger.cc +++ b/src/lib/audio_merger.cc @@ -31,7 +31,7 @@ using std::max; using std::list; using std::cout; using std::make_pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; @@ -95,7 +95,7 @@ AudioMerger::pull (DCPTime time) /** Push some data into the merger at a given time */ void -AudioMerger::push (boost::shared_ptr<const AudioBuffers> audio, DCPTime time) +AudioMerger::push (std::shared_ptr<const AudioBuffers> audio, DCPTime time) { DCPOMATIC_ASSERT (audio->frames() > 0); diff --git a/src/lib/audio_merger.h b/src/lib/audio_merger.h index d5a6ec43a..adaf72f81 100644 --- a/src/lib/audio_merger.h +++ b/src/lib/audio_merger.h @@ -33,8 +33,8 @@ class AudioMerger public: explicit AudioMerger (int frame_rate); - std::list<std::pair<boost::shared_ptr<AudioBuffers>, dcpomatic::DCPTime> > pull (dcpomatic::DCPTime time); - void push (boost::shared_ptr<const AudioBuffers> audio, dcpomatic::DCPTime time); + std::list<std::pair<std::shared_ptr<AudioBuffers>, dcpomatic::DCPTime> > pull (dcpomatic::DCPTime time); + void push (std::shared_ptr<const AudioBuffers> audio, dcpomatic::DCPTime time); void clear (); private: @@ -54,13 +54,13 @@ private: , frame_rate (r) {} - Buffer (boost::shared_ptr<AudioBuffers> a, dcpomatic::DCPTime t, int r) + Buffer (std::shared_ptr<AudioBuffers> a, dcpomatic::DCPTime t, int r) : audio (a) , time (t) , frame_rate (r) {} - boost::shared_ptr<AudioBuffers> audio; + std::shared_ptr<AudioBuffers> audio; dcpomatic::DCPTime time; int frame_rate; diff --git a/src/lib/audio_processor.h b/src/lib/audio_processor.h index 194c9bf0e..e2f1c48eb 100644 --- a/src/lib/audio_processor.h +++ b/src/lib/audio_processor.h @@ -26,7 +26,6 @@ #define DCPOMATIC_AUDIO_PROCESSOR_H #include "types.h" -#include <boost/shared_ptr.hpp> #include <list> #include <string> #include <vector> @@ -52,9 +51,9 @@ public: /** @return Number of output channels */ virtual int out_channels () const = 0; /** @return A clone of this AudioProcessor for operation at the specified sampling rate */ - virtual boost::shared_ptr<AudioProcessor> clone (int sampling_rate) const = 0; + virtual std::shared_ptr<AudioProcessor> clone (int sampling_rate) const = 0; /** Process some data, returning the processed result truncated or padded to `channels' */ - virtual boost::shared_ptr<AudioBuffers> run (boost::shared_ptr<const AudioBuffers>, int channels) = 0; + virtual std::shared_ptr<AudioBuffers> run (std::shared_ptr<const AudioBuffers>, int channels) = 0; virtual void flush () {} /** Make the supplied audio mapping into a sensible default for this processor */ virtual void make_audio_mapping_default (AudioMapping& mapping) const = 0; diff --git a/src/lib/audio_ring_buffers.cc b/src/lib/audio_ring_buffers.cc index cd7f4f597..c0559f61c 100644 --- a/src/lib/audio_ring_buffers.cc +++ b/src/lib/audio_ring_buffers.cc @@ -29,7 +29,7 @@ using std::cout; using std::make_pair; using std::pair; using std::list; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/audio_ring_buffers.h b/src/lib/audio_ring_buffers.h index bfaad5ec9..2cfc0a30b 100644 --- a/src/lib/audio_ring_buffers.h +++ b/src/lib/audio_ring_buffers.h @@ -24,7 +24,6 @@ #include "audio_buffers.h" #include "types.h" #include "dcpomatic_time.h" -#include <boost/shared_ptr.hpp> #include <boost/thread.hpp> #include <list> @@ -33,7 +32,7 @@ class AudioRingBuffers : public boost::noncopyable public: AudioRingBuffers (); - void put (boost::shared_ptr<const AudioBuffers> data, dcpomatic::DCPTime time, int frame_rate); + void put (std::shared_ptr<const AudioBuffers> data, dcpomatic::DCPTime time, int frame_rate); boost::optional<dcpomatic::DCPTime> get (float* out, int channels, int frames); boost::optional<dcpomatic::DCPTime> peek () const; @@ -42,7 +41,7 @@ public: private: mutable boost::mutex _mutex; - std::list<std::pair<boost::shared_ptr<const AudioBuffers>, dcpomatic::DCPTime> > _buffers; + std::list<std::pair<std::shared_ptr<const AudioBuffers>, dcpomatic::DCPTime> > _buffers; int _used_in_head; }; diff --git a/src/lib/audio_stream.h b/src/lib/audio_stream.h index e50a53b8a..a7e204065 100644 --- a/src/lib/audio_stream.h +++ b/src/lib/audio_stream.h @@ -65,6 +65,6 @@ private: AudioMapping _mapping; }; -typedef boost::shared_ptr<AudioStream> AudioStreamPtr; +typedef std::shared_ptr<AudioStream> AudioStreamPtr; #endif diff --git a/src/lib/bitmap_text.h b/src/lib/bitmap_text.h index 2314c2db0..b8861c10a 100644 --- a/src/lib/bitmap_text.h +++ b/src/lib/bitmap_text.h @@ -21,20 +21,22 @@ #ifndef DCPOMATIC_BITMAP_CAPTION_H #define DCPOMATIC_BITMAP_CAPTION_H + #include "rect.h" -#include <boost/shared_ptr.hpp> +#include <memory> + class Image; class BitmapText { public: - BitmapText (boost::shared_ptr<Image> i, dcpomatic::Rect<double> r) + BitmapText (std::shared_ptr<Image> i, dcpomatic::Rect<double> r) : image (i) , rectangle (r) {} - boost::shared_ptr<Image> image; + std::shared_ptr<Image> image; /** Area that the subtitle covers on its corresponding video, expressed in * proportions of the image size; e.g. rectangle.x = 0.5 would mean that * the rectangle starts half-way across the video. diff --git a/src/lib/butler.cc b/src/lib/butler.cc index 270abd2d6..d09b0356a 100644 --- a/src/lib/butler.cc +++ b/src/lib/butler.cc @@ -27,15 +27,14 @@ #include "compose.hpp" #include "exceptions.h" #include "video_content.h" -#include <boost/weak_ptr.hpp> -#include <boost/shared_ptr.hpp> + using std::cout; using std::pair; using std::make_pair; using std::string; -using boost::weak_ptr; -using boost::shared_ptr; +using std::weak_ptr; +using std::shared_ptr; using boost::bind; using boost::optional; using boost::function; diff --git a/src/lib/butler.h b/src/lib/butler.h index ab6fd7853..49a57a826 100644 --- a/src/lib/butler.h +++ b/src/lib/butler.h @@ -23,8 +23,6 @@ #include "text_ring_buffers.h" #include "audio_mapping.h" #include "exception_store.h" -#include <boost/shared_ptr.hpp> -#include <boost/weak_ptr.hpp> #include <boost/thread.hpp> #include <boost/thread/condition.hpp> #include <boost/signals2.hpp> @@ -37,8 +35,8 @@ class Butler : public ExceptionStore, public boost::noncopyable { public: Butler ( - boost::weak_ptr<const Film> film, - boost::shared_ptr<Player> player, + std::weak_ptr<const Film> film, + std::shared_ptr<Player> player, AudioMapping map, int audio_channels, boost::function<AVPixelFormat (AVPixelFormat)> pixel_format, @@ -70,7 +68,7 @@ public: std::string summary () const; }; - std::pair<boost::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> get_video (bool blocking, Error* e = 0); + std::pair<std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> get_video (bool blocking, Error* e = 0); boost::optional<dcpomatic::DCPTime> get_audio (float* out, Frame frames); boost::optional<TextRingBuffers::Data> get_closed_caption (); @@ -80,16 +78,16 @@ public: private: void thread (); - void video (boost::shared_ptr<PlayerVideo> video, dcpomatic::DCPTime time); - void audio (boost::shared_ptr<AudioBuffers> audio, dcpomatic::DCPTime time, int frame_rate); + void video (std::shared_ptr<PlayerVideo> video, dcpomatic::DCPTime time); + void audio (std::shared_ptr<AudioBuffers> audio, dcpomatic::DCPTime time, int frame_rate); void text (PlayerText pt, TextType type, boost::optional<DCPTextTrack> track, dcpomatic::DCPTimePeriod period); bool should_run () const; - void prepare (boost::weak_ptr<PlayerVideo> video); + void prepare (std::weak_ptr<PlayerVideo> video); void player_change (ChangeType type, int property); void seek_unlocked (dcpomatic::DCPTime position, bool accurate); - boost::weak_ptr<const Film> _film; - boost::shared_ptr<Player> _player; + std::weak_ptr<const Film> _film; + std::shared_ptr<Player> _player; boost::thread _thread; VideoRingBuffers _video; @@ -98,7 +96,7 @@ private: boost::thread_group _prepare_pool; boost::asio::io_service _prepare_service; - boost::shared_ptr<boost::asio::io_service::work> _prepare_work; + std::shared_ptr<boost::asio::io_service::work> _prepare_work; /** mutex to protect _pending_seek_position, _pending_seek_accurate, _finished, _died, _stop_thread */ boost::mutex _mutex; diff --git a/src/lib/check_content_change_job.cc b/src/lib/check_content_change_job.cc index 644e730bb..45a662e37 100644 --- a/src/lib/check_content_change_job.cc +++ b/src/lib/check_content_change_job.cc @@ -31,7 +31,7 @@ using std::string; using std::list; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; /** @param gui true if we are running this job from the GUI, false if it's the CLI */ CheckContentChangeJob::CheckContentChangeJob (shared_ptr<const Film> film, shared_ptr<Job> following, bool gui) diff --git a/src/lib/check_content_change_job.h b/src/lib/check_content_change_job.h index 152cdb9e7..739d2651f 100644 --- a/src/lib/check_content_change_job.h +++ b/src/lib/check_content_change_job.h @@ -27,7 +27,7 @@ class CheckContentChangeJob : public Job { public: - CheckContentChangeJob (boost::shared_ptr<const Film>, boost::shared_ptr<Job> following = boost::shared_ptr<Job>(), bool gui = true); + CheckContentChangeJob (std::shared_ptr<const Film>, std::shared_ptr<Job> following = std::shared_ptr<Job>(), bool gui = true); ~CheckContentChangeJob (); std::string name () const; @@ -35,6 +35,6 @@ public: void run (); private: - boost::shared_ptr<Job> _following; + std::shared_ptr<Job> _following; bool _gui; }; diff --git a/src/lib/cinema.cc b/src/lib/cinema.cc index 1902f15f9..48cba2b8f 100644 --- a/src/lib/cinema.cc +++ b/src/lib/cinema.cc @@ -29,7 +29,7 @@ using std::list; using std::string; -using boost::shared_ptr; +using std::shared_ptr; using dcp::raw_convert; using dcpomatic::Screen; diff --git a/src/lib/cinema.h b/src/lib/cinema.h index 86245953b..daa4aa8bf 100644 --- a/src/lib/cinema.h +++ b/src/lib/cinema.h @@ -22,8 +22,10 @@ * @brief Cinema class. */ + #include <libcxml/cxml.h> -#include <boost/enable_shared_from_this.hpp> +#include <memory> + namespace xmlpp { class Element; @@ -39,7 +41,7 @@ namespace dcpomatic { * This is a cinema name, some metadata and a list of * Screen objects. */ -class Cinema : public boost::enable_shared_from_this<Cinema> +class Cinema : public std::enable_shared_from_this<Cinema> { public: Cinema (std::string const & name_, std::list<std::string> const & e, std::string notes_, int utc_offset_hour, int utc_offset_minute) @@ -56,8 +58,8 @@ public: void as_xml (xmlpp::Element *) const; - void add_screen (boost::shared_ptr<dcpomatic::Screen>); - void remove_screen (boost::shared_ptr<dcpomatic::Screen>); + void add_screen (std::shared_ptr<dcpomatic::Screen>); + void remove_screen (std::shared_ptr<dcpomatic::Screen>); void set_utc_offset_hour (int h); void set_utc_offset_minute (int m); @@ -74,12 +76,12 @@ public: return _utc_offset_minute; } - std::list<boost::shared_ptr<dcpomatic::Screen> > screens () const { + std::list<std::shared_ptr<dcpomatic::Screen> > screens () const { return _screens; } private: - std::list<boost::shared_ptr<dcpomatic::Screen> > _screens; + std::list<std::shared_ptr<dcpomatic::Screen> > _screens; /** Offset such that the equivalent time in UTC can be determined by subtracting the offset from the local time. */ diff --git a/src/lib/colour_conversion.cc b/src/lib/colour_conversion.cc index 22404c279..d0e0f4638 100644 --- a/src/lib/colour_conversion.cc +++ b/src/lib/colour_conversion.cc @@ -42,9 +42,9 @@ using std::list; using std::string; using std::cout; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using dcp::raw_convert; vector<PresetColourConversion> PresetColourConversion::_presets; diff --git a/src/lib/combine_dcp_job.cc b/src/lib/combine_dcp_job.cc index b3c29b205..3497d4b72 100644 --- a/src/lib/combine_dcp_job.cc +++ b/src/lib/combine_dcp_job.cc @@ -28,7 +28,7 @@ using std::string; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; CombineDCPJob::CombineDCPJob (vector<boost::filesystem::path> inputs, boost::filesystem::path output) diff --git a/src/lib/config.cc b/src/lib/config.cc index 6e8106aae..e2425799d 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -59,9 +59,9 @@ using std::max; using std::remove; using std::exception; using std::cerr; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using boost::algorithm::trim; using dcp::raw_convert; diff --git a/src/lib/config.h b/src/lib/config.h index 87afcbba8..957a84666 100644 --- a/src/lib/config.h +++ b/src/lib/config.h @@ -33,7 +33,6 @@ #include <dcp/name_format.h> #include <dcp/certificate_chain.h> #include <dcp/encrypted_kdm.h> -#include <boost/shared_ptr.hpp> #include <boost/signals2.hpp> #include <boost/filesystem.hpp> #include <vector> @@ -142,11 +141,11 @@ public: return _tms_password; } - std::list<boost::shared_ptr<Cinema> > cinemas () const { + std::list<std::shared_ptr<Cinema> > cinemas () const { return _cinemas; } - std::list<boost::shared_ptr<DKDMRecipient> > dkdm_recipients () const { + std::list<std::shared_ptr<DKDMRecipient> > dkdm_recipients () const { return _dkdm_recipients; } @@ -302,11 +301,11 @@ public: return _notification_email; } - boost::shared_ptr<const dcp::CertificateChain> signer_chain () const { + std::shared_ptr<const dcp::CertificateChain> signer_chain () const { return _signer_chain; } - boost::shared_ptr<const dcp::CertificateChain> decryption_chain () const { + std::shared_ptr<const dcp::CertificateChain> decryption_chain () const { return _decryption_chain; } @@ -348,7 +347,7 @@ public: return _player_history; } - boost::shared_ptr<DKDMGroup> dkdms () const { + std::shared_ptr<DKDMGroup> dkdms () const { return _dkdms; } @@ -588,22 +587,22 @@ public: maybe_set (_tms_password, p); } - void add_cinema (boost::shared_ptr<Cinema> c) { + void add_cinema (std::shared_ptr<Cinema> c) { _cinemas.push_back (c); changed (CINEMAS); } - void remove_cinema (boost::shared_ptr<Cinema> c) { + void remove_cinema (std::shared_ptr<Cinema> c) { _cinemas.remove (c); changed (CINEMAS); } - void add_dkdm_recipient (boost::shared_ptr<DKDMRecipient> c) { + void add_dkdm_recipient (std::shared_ptr<DKDMRecipient> c) { _dkdm_recipients.push_back (c); changed (DKDM_RECIPIENTS); } - void remove_dkdm_recipient (boost::shared_ptr<DKDMRecipient> c) { + void remove_dkdm_recipient (std::shared_ptr<DKDMRecipient> c) { _dkdm_recipients.remove (c); changed (DKDM_RECIPIENTS); } @@ -769,11 +768,11 @@ public: void reset_notification_email (); - void set_signer_chain (boost::shared_ptr<const dcp::CertificateChain> s) { + void set_signer_chain (std::shared_ptr<const dcp::CertificateChain> s) { maybe_set (_signer_chain, s); } - void set_decryption_chain (boost::shared_ptr<const dcp::CertificateChain> c) { + void set_decryption_chain (std::shared_ptr<const dcp::CertificateChain> c) { maybe_set (_decryption_chain, c); } @@ -810,7 +809,7 @@ public: } #endif - void set_dkdms (boost::shared_ptr<DKDMGroup> dkdms) { + void set_dkdms (std::shared_ptr<DKDMGroup> dkdms) { _dkdms = dkdms; changed (); } @@ -1075,7 +1074,7 @@ public: void copy_and_link (boost::filesystem::path new_file) const; bool have_write_permission () const; - void save_template (boost::shared_ptr<const Film> film, std::string name) const; + void save_template (std::shared_ptr<const Film> film, std::string name) const; bool existing_template (std::string name) const; std::list<std::string> templates () const; boost::filesystem::path template_path (std::string name) const; @@ -1097,7 +1096,7 @@ private: void set_cover_sheet_to_default (); void read_cinemas (cxml::Document const & f); void read_dkdm_recipients (cxml::Document const & f); - boost::shared_ptr<dcp::CertificateChain> create_certificate_chain (); + std::shared_ptr<dcp::CertificateChain> create_certificate_chain (); boost::filesystem::path directory_or (boost::optional<boost::filesystem::path> dir, boost::filesystem::path a) const; void add_to_history_internal (std::vector<boost::filesystem::path>& h, boost::filesystem::path p); void clean_history_internal (std::vector<boost::filesystem::path>& h); @@ -1178,8 +1177,8 @@ private: */ boost::optional<boost::filesystem::path> _default_kdm_directory; bool _upload_after_make_dcp; - std::list<boost::shared_ptr<Cinema> > _cinemas; - std::list<boost::shared_ptr<DKDMRecipient> > _dkdm_recipients; + std::list<std::shared_ptr<Cinema> > _cinemas; + std::list<std::shared_ptr<DKDMRecipient> > _dkdm_recipients; std::string _mail_server; int _mail_port; EmailProtocol _mail_protocol; @@ -1196,11 +1195,11 @@ private: std::vector<std::string> _notification_cc; std::string _notification_bcc; std::string _notification_email; - boost::shared_ptr<const dcp::CertificateChain> _signer_chain; + std::shared_ptr<const dcp::CertificateChain> _signer_chain; /** Chain used to decrypt KDMs; the leaf of this chain is the target * certificate for making KDMs given to DCP-o-matic. */ - boost::shared_ptr<const dcp::CertificateChain> _decryption_chain; + std::shared_ptr<const dcp::CertificateChain> _decryption_chain; /** true to check for updates on startup */ bool _check_for_updates; bool _check_for_test_updates; @@ -1214,7 +1213,7 @@ private: #endif std::vector<boost::filesystem::path> _history; std::vector<boost::filesystem::path> _player_history; - boost::shared_ptr<DKDMGroup> _dkdms; + std::shared_ptr<DKDMGroup> _dkdms; boost::filesystem::path _cinemas_file; boost::filesystem::path _dkdm_recipients_file; bool _show_hints_before_make_dcp; diff --git a/src/lib/content.cc b/src/lib/content.cc index 4242477d4..efcec534c 100644 --- a/src/lib/content.cc +++ b/src/lib/content.cc @@ -48,7 +48,7 @@ using std::cout; using std::vector; using std::max; using std::pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using dcp::raw_convert; using dcp::locale_convert; @@ -206,7 +206,7 @@ Content::signal_change (ChangeType c, int p) } else { emit (boost::bind (boost::ref(Change), c, shared_from_this(), p, _change_signals_frequent)); } - } catch (boost::bad_weak_ptr &) { + } catch (std::bad_weak_ptr &) { /* This must be during construction; never mind */ } } diff --git a/src/lib/content.h b/src/lib/content.h index 5f8e9f53d..8a28762d3 100644 --- a/src/lib/content.h +++ b/src/lib/content.h @@ -34,7 +34,7 @@ #include <boost/filesystem.hpp> #include <boost/signals2.hpp> #include <boost/thread/mutex.hpp> -#include <boost/enable_shared_from_this.hpp> + namespace xmlpp { class Node; @@ -62,23 +62,23 @@ public: /** @class Content * @brief A piece of content represented by one or more files on disk. */ -class Content : public boost::enable_shared_from_this<Content>, public Signaller, public boost::noncopyable +class Content : public std::enable_shared_from_this<Content>, public Signaller, public boost::noncopyable { public: explicit Content (); Content (dcpomatic::DCPTime); Content (boost::filesystem::path); Content (cxml::ConstNodePtr); - Content (std::vector<boost::shared_ptr<Content> >); + Content (std::vector<std::shared_ptr<Content> >); virtual ~Content () {} /** Examine the content to establish digest, frame rates and any other * useful metadata. * @param job Job to use to report progress, or 0. */ - virtual void examine (boost::shared_ptr<const Film> film, boost::shared_ptr<Job> job); + virtual void examine (std::shared_ptr<const Film> film, std::shared_ptr<Job> job); - virtual void take_settings_from (boost::shared_ptr<const Content> c); + virtual void take_settings_from (std::shared_ptr<const Content> c); /** @return Quick one-line summary of the content, as will be presented in the * film editor. @@ -91,15 +91,15 @@ public: virtual std::string technical_summary () const; virtual void as_xml (xmlpp::Node *, bool with_paths) const; - virtual dcpomatic::DCPTime full_length (boost::shared_ptr<const Film>) const = 0; + virtual dcpomatic::DCPTime full_length (std::shared_ptr<const Film>) const = 0; virtual dcpomatic::DCPTime approximate_length () const = 0; virtual std::string identifier () const; /** @return points at which to split this content when * REELTYPE_BY_VIDEO_CONTENT is in use. */ - virtual std::list<dcpomatic::DCPTime> reel_split_points (boost::shared_ptr<const Film>) const; + virtual std::list<dcpomatic::DCPTime> reel_split_points (std::shared_ptr<const Film>) const; - boost::shared_ptr<Content> clone () const; + std::shared_ptr<Content> clone () const; void set_paths (std::vector<boost::filesystem::path> paths); @@ -136,7 +136,7 @@ public: return _digest; } - void set_position (boost::shared_ptr<const Film> film, dcpomatic::DCPTime, bool force_emit = false); + void set_position (std::shared_ptr<const Film> film, dcpomatic::DCPTime, bool force_emit = false); /** dcpomatic::DCPTime that this content starts; i.e. the time that the first * bit of the content (trimmed or not) will happen. @@ -161,11 +161,11 @@ public: } /** @return Time immediately after the last thing in this content */ - dcpomatic::DCPTime end (boost::shared_ptr<const Film> film) const { + dcpomatic::DCPTime end (std::shared_ptr<const Film> film) const { return position() + length_after_trim(film); } - dcpomatic::DCPTime length_after_trim (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime length_after_trim (std::shared_ptr<const Film> film) const; boost::optional<double> video_frame_rate () const { boost::mutex::scoped_lock lm (_mutex); @@ -175,30 +175,30 @@ public: void set_video_frame_rate (double r); void unset_video_frame_rate (); - double active_video_frame_rate (boost::shared_ptr<const Film> film) const; + double active_video_frame_rate (std::shared_ptr<const Film> film) const; void set_change_signals_frequent (bool f) { _change_signals_frequent = f; } - std::list<UserProperty> user_properties (boost::shared_ptr<const Film> film) const; + std::list<UserProperty> user_properties (std::shared_ptr<const Film> film) const; std::string calculate_digest () const; /* CHANGE_TYPE_PENDING and CHANGE_TYPE_CANCELLED may be emitted from any thread; CHANGE_TYPE_DONE always from GUI thread */ - boost::signals2::signal<void (ChangeType, boost::weak_ptr<Content>, int, bool)> Change; + boost::signals2::signal<void (ChangeType, std::weak_ptr<Content>, int, bool)> Change; - boost::shared_ptr<VideoContent> video; - boost::shared_ptr<AudioContent> audio; - std::list<boost::shared_ptr<TextContent> > text; - boost::shared_ptr<AtmosContent> atmos; + std::shared_ptr<VideoContent> video; + std::shared_ptr<AudioContent> audio; + std::list<std::shared_ptr<TextContent> > text; + std::shared_ptr<AtmosContent> atmos; - boost::shared_ptr<TextContent> only_text () const; - boost::shared_ptr<TextContent> text_of_original_type (TextType type) const; + std::shared_ptr<TextContent> only_text () const; + std::shared_ptr<TextContent> text_of_original_type (TextType type) const; protected: - virtual void add_properties (boost::shared_ptr<const Film> film, std::list<UserProperty> &) const; + virtual void add_properties (std::shared_ptr<const Film> film, std::list<UserProperty> &) const; /** _mutex which should be used to protect accesses, as examine * jobs can update content state in threads other than the main one. diff --git a/src/lib/content_atmos.h b/src/lib/content_atmos.h index 57b7e404f..891ca3b83 100644 --- a/src/lib/content_atmos.h +++ b/src/lib/content_atmos.h @@ -24,7 +24,6 @@ #include "atmos_metadata.h" #include "types.h" #include <dcp/atmos_asset_reader.h> -#include <boost/shared_ptr.hpp> /** @class ContentAtmos * @brief Some Atmos data that has come out of a decoder. @@ -32,13 +31,13 @@ class ContentAtmos { public: - ContentAtmos (boost::shared_ptr<const dcp::AtmosFrame> data_, Frame frame_, AtmosMetadata metadata_) + ContentAtmos (std::shared_ptr<const dcp::AtmosFrame> data_, Frame frame_, AtmosMetadata metadata_) : data (data_) , frame (frame_) , metadata (metadata_) {} - boost::shared_ptr<const dcp::AtmosFrame> data; + std::shared_ptr<const dcp::AtmosFrame> data; Frame frame; AtmosMetadata metadata; }; diff --git a/src/lib/content_audio.h b/src/lib/content_audio.h index 509e7e4a6..0d16799d7 100644 --- a/src/lib/content_audio.h +++ b/src/lib/content_audio.h @@ -39,12 +39,12 @@ public: , frame (0) {} - ContentAudio (boost::shared_ptr<const AudioBuffers> a, Frame f) + ContentAudio (std::shared_ptr<const AudioBuffers> a, Frame f) : audio (a) , frame (f) {} - boost::shared_ptr<const AudioBuffers> audio; + std::shared_ptr<const AudioBuffers> audio; Frame frame; }; diff --git a/src/lib/content_factory.cc b/src/lib/content_factory.cc index 0e8b04eda..c4e389c7c 100644 --- a/src/lib/content_factory.cc +++ b/src/lib/content_factory.cc @@ -45,7 +45,7 @@ using std::string; using std::list; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; /** Create a Content object from an XML node. @@ -59,7 +59,7 @@ content_factory (cxml::ConstNodePtr node, int version, list<string>& notes) { string const type = node->string_child ("Type"); - boost::shared_ptr<Content> content; + std::shared_ptr<Content> content; if (type == "FFmpeg") { /* SndfileContent is now handled by the FFmpeg code rather than by diff --git a/src/lib/content_factory.h b/src/lib/content_factory.h index 2522ad017..ab76a29dc 100644 --- a/src/lib/content_factory.h +++ b/src/lib/content_factory.h @@ -23,10 +23,9 @@ */ #include <libcxml/cxml.h> -#include <boost/shared_ptr.hpp> class Film; class Content; -extern boost::shared_ptr<Content> content_factory (cxml::ConstNodePtr, int, std::list<std::string> &); -extern std::list<boost::shared_ptr<Content> > content_factory (boost::filesystem::path); +extern std::shared_ptr<Content> content_factory (cxml::ConstNodePtr, int, std::list<std::string> &); +extern std::list<std::shared_ptr<Content> > content_factory (boost::filesystem::path); diff --git a/src/lib/content_part.h b/src/lib/content_part.h index eb96b1371..a81334270 100644 --- a/src/lib/content_part.h +++ b/src/lib/content_part.h @@ -24,7 +24,6 @@ #include "content.h" #include "change_signaller.h" -#include <boost/weak_ptr.hpp> #include <boost/thread/mutex.hpp> class Content; diff --git a/src/lib/content_store.h b/src/lib/content_store.h index 028fa2797..d5a6336a5 100644 --- a/src/lib/content_store.h +++ b/src/lib/content_store.h @@ -18,7 +18,9 @@ */ -#include <boost/shared_ptr.hpp> + +#include <memory> + class Content; @@ -28,5 +30,5 @@ class Content; class ContentStore { public: - virtual boost::shared_ptr<Content> get (std::string digest) const = 0; + virtual std::shared_ptr<Content> get (std::string digest) const = 0; }; diff --git a/src/lib/content_text.h b/src/lib/content_text.h index 0c0df1ee6..c6d7d6ec2 100644 --- a/src/lib/content_text.h +++ b/src/lib/content_text.h @@ -48,7 +48,7 @@ private: class ContentBitmapText : public ContentText { public: - ContentBitmapText (dcpomatic::ContentTime f, boost::shared_ptr<Image> im, dcpomatic::Rect<double> r) + ContentBitmapText (dcpomatic::ContentTime f, std::shared_ptr<Image> im, dcpomatic::Rect<double> r) : ContentText (f) , sub (im, r) {} diff --git a/src/lib/content_video.h b/src/lib/content_video.h index 8b3d984df..ee169b6c5 100644 --- a/src/lib/content_video.h +++ b/src/lib/content_video.h @@ -37,14 +37,14 @@ public: , part (PART_WHOLE) {} - ContentVideo (boost::shared_ptr<const ImageProxy> i, Frame f, Eyes e, Part p) + ContentVideo (std::shared_ptr<const ImageProxy> i, Frame f, Eyes e, Part p) : image (i) , frame (f) , eyes (e) , part (p) {} - boost::shared_ptr<const ImageProxy> image; + std::shared_ptr<const ImageProxy> image; Frame frame; Eyes eyes; Part part; diff --git a/src/lib/copy_dcp_details_to_film.cc b/src/lib/copy_dcp_details_to_film.cc index c33b0974b..9bd88a422 100644 --- a/src/lib/copy_dcp_details_to_film.cc +++ b/src/lib/copy_dcp_details_to_film.cc @@ -26,14 +26,13 @@ #include "audio_content.h" #include "ratio.h" #include "dcp_content_type.h" -#include <boost/shared_ptr.hpp> #include <map> using std::map; using std::string; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; void diff --git a/src/lib/copy_dcp_details_to_film.h b/src/lib/copy_dcp_details_to_film.h index 38eb7fcc9..1b5c05811 100644 --- a/src/lib/copy_dcp_details_to_film.h +++ b/src/lib/copy_dcp_details_to_film.h @@ -18,9 +18,11 @@ */ -#include <boost/shared_ptr.hpp> + +#include <memory> + class DCPContent; class Film; -extern void copy_dcp_details_to_film (boost::shared_ptr<const DCPContent> dcp, boost::shared_ptr<Film> film); +extern void copy_dcp_details_to_film (std::shared_ptr<const DCPContent> dcp, std::shared_ptr<Film> film); diff --git a/src/lib/copy_to_drive_job.cc b/src/lib/copy_to_drive_job.cc index f78d3d3c5..eafa126b6 100644 --- a/src/lib/copy_to_drive_job.cc +++ b/src/lib/copy_to_drive_job.cc @@ -37,7 +37,7 @@ using std::string; using std::cout; using std::min; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using dcp::raw_convert; diff --git a/src/lib/cross_linux.cc b/src/lib/cross_linux.cc index 27822a1d3..247bf4aab 100644 --- a/src/lib/cross_linux.cc +++ b/src/lib/cross_linux.cc @@ -57,7 +57,7 @@ using std::vector; using std::cerr; using std::cout; using std::runtime_error; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using boost::function; diff --git a/src/lib/cross_osx.cc b/src/lib/cross_osx.cc index a16907ebe..76c451a6f 100644 --- a/src/lib/cross_osx.cc +++ b/src/lib/cross_osx.cc @@ -64,7 +64,7 @@ using std::cerr; using std::cout; using std::runtime_error; using std::map; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using boost::function; diff --git a/src/lib/cross_windows.cc b/src/lib/cross_windows.cc index ad5a88664..1fe555648 100644 --- a/src/lib/cross_windows.cc +++ b/src/lib/cross_windows.cc @@ -59,7 +59,7 @@ using std::cerr; using std::cout; using std::runtime_error; using std::map; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; static std::vector<pair<HANDLE, string> > locked_volumes; diff --git a/src/lib/dcp.cc b/src/lib/dcp.cc index 2f56a4ee7..8baf489d1 100644 --- a/src/lib/dcp.cc +++ b/src/lib/dcp.cc @@ -34,8 +34,8 @@ using std::list; using std::string; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; /** Find all the CPLs in our directories, cross-add assets and return the CPLs */ diff --git a/src/lib/dcp.h b/src/lib/dcp.h index d449fdb39..d72ce6833 100644 --- a/src/lib/dcp.h +++ b/src/lib/dcp.h @@ -22,7 +22,6 @@ #define DCPOMATIC_DCP_H #include <dcp/cpl.h> -#include <boost/shared_ptr.hpp> #include <list> #include <iostream> @@ -31,15 +30,15 @@ class DCPContent; class DCP { public: - std::list<boost::shared_ptr<dcp::CPL> > cpls () const; + std::list<std::shared_ptr<dcp::CPL> > cpls () const; protected: - explicit DCP (boost::shared_ptr<const DCPContent> content, bool tolerant) + explicit DCP (std::shared_ptr<const DCPContent> content, bool tolerant) : _dcp_content (content) , _tolerant (tolerant) {} - boost::shared_ptr<const DCPContent> _dcp_content; + std::shared_ptr<const DCPContent> _dcp_content; private: bool _tolerant; diff --git a/src/lib/dcp_content.cc b/src/lib/dcp_content.cc index 3b90c9c4f..d4bd58e58 100644 --- a/src/lib/dcp_content.cc +++ b/src/lib/dcp_content.cc @@ -53,11 +53,11 @@ using std::pair; using std::vector; using std::list; using std::map; -using boost::shared_ptr; +using std::shared_ptr; using boost::scoped_ptr; using boost::optional; using boost::function; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; #endif diff --git a/src/lib/dcp_content.h b/src/lib/dcp_content.h index 473dbae36..c235dd823 100644 --- a/src/lib/dcp_content.h +++ b/src/lib/dcp_content.h @@ -53,26 +53,26 @@ public: DCPContent (boost::filesystem::path p); DCPContent (cxml::ConstNodePtr, int version); - boost::shared_ptr<DCPContent> shared_from_this () { - return boost::dynamic_pointer_cast<DCPContent> (Content::shared_from_this ()); + std::shared_ptr<DCPContent> shared_from_this () { + return std::dynamic_pointer_cast<DCPContent> (Content::shared_from_this ()); } - boost::shared_ptr<const DCPContent> shared_from_this () const { - return boost::dynamic_pointer_cast<const DCPContent> (Content::shared_from_this ()); + std::shared_ptr<const DCPContent> shared_from_this () const { + return std::dynamic_pointer_cast<const DCPContent> (Content::shared_from_this ()); } - dcpomatic::DCPTime full_length (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime full_length (std::shared_ptr<const Film> film) const; dcpomatic::DCPTime approximate_length () const; - void examine (boost::shared_ptr<const Film> film, boost::shared_ptr<Job>); + void examine (std::shared_ptr<const Film> film, std::shared_ptr<Job>); std::string summary () const; std::string technical_summary () const; void as_xml (xmlpp::Node *, bool with_paths) const; std::string identifier () const; - void take_settings_from (boost::shared_ptr<const Content> c); + void take_settings_from (std::shared_ptr<const Content> c); void set_default_colour_conversion (); - std::list<dcpomatic::DCPTime> reel_split_points (boost::shared_ptr<const Film> film) const; + std::list<dcpomatic::DCPTime> reel_split_points (std::shared_ptr<const Film> film) const; std::vector<boost::filesystem::path> directories () const; @@ -99,7 +99,7 @@ public: return _reference_video; } - bool can_reference_video (boost::shared_ptr<const Film> film, std::string &) const; + bool can_reference_video (std::shared_ptr<const Film> film, std::string &) const; void set_reference_audio (bool r); @@ -108,7 +108,7 @@ public: return _reference_audio; } - bool can_reference_audio (boost::shared_ptr<const Film> film, std::string &) const; + bool can_reference_audio (std::shared_ptr<const Film> film, std::string &) const; void set_reference_text (TextType type, bool r); @@ -120,7 +120,7 @@ public: return _reference_text[type]; } - bool can_reference_text (boost::shared_ptr<const Film> film, TextType type, std::string &) const; + bool can_reference_text (std::shared_ptr<const Film> film, TextType type, std::string &) const; void set_cpl (std::string id); @@ -169,14 +169,14 @@ public: private: friend struct reels_test5; - void add_properties (boost::shared_ptr<const Film> film, std::list<UserProperty>& p) const; + void add_properties (std::shared_ptr<const Film> film, std::list<UserProperty>& p) const; void read_directory (boost::filesystem::path); void read_sub_directory (boost::filesystem::path); - std::list<dcpomatic::DCPTimePeriod> reels (boost::shared_ptr<const Film> film) const; + std::list<dcpomatic::DCPTimePeriod> reels (std::shared_ptr<const Film> film) const; bool can_reference ( - boost::shared_ptr<const Film> film, - boost::function <bool (boost::shared_ptr<const Content>)>, + std::shared_ptr<const Film> film, + boost::function <bool (std::shared_ptr<const Content>)>, std::string overlapping, std::string& why_not ) const; diff --git a/src/lib/dcp_decoder.cc b/src/lib/dcp_decoder.cc index 17710a3bd..aa8fed2b4 100644 --- a/src/lib/dcp_decoder.cc +++ b/src/lib/dcp_decoder.cc @@ -59,8 +59,8 @@ using std::cout; using std::map; using std::string; using std::vector; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/dcp_decoder.h b/src/lib/dcp_decoder.h index 99bdb8bd4..553f05aed 100644 --- a/src/lib/dcp_decoder.h +++ b/src/lib/dcp_decoder.h @@ -42,14 +42,14 @@ class DCPDecoder : public DCP, public Decoder { public: DCPDecoder ( - boost::shared_ptr<const Film> film, - boost::shared_ptr<const DCPContent>, + std::shared_ptr<const Film> film, + std::shared_ptr<const DCPContent>, bool fast, bool tolerant, - boost::shared_ptr<DCPDecoder> old + std::shared_ptr<DCPDecoder> old ); - std::list<boost::shared_ptr<dcp::Reel> > reels () const { + std::list<std::shared_ptr<dcp::Reel> > reels () const { return _reels; } @@ -75,28 +75,28 @@ private: void pass_texts (dcpomatic::ContentTime next, dcp::Size size); void pass_texts ( dcpomatic::ContentTime next, - boost::shared_ptr<dcp::SubtitleAsset> asset, + std::shared_ptr<dcp::SubtitleAsset> asset, bool reference, int64_t entry_point, - boost::shared_ptr<TextDecoder> decoder, + std::shared_ptr<TextDecoder> decoder, dcp::Size size ); - std::string calculate_lazy_digest (boost::shared_ptr<const DCPContent>) const; + std::string calculate_lazy_digest (std::shared_ptr<const DCPContent>) const; /** Time of next thing to return from pass relative to the start of _reel */ dcpomatic::ContentTime _next; - std::list<boost::shared_ptr<dcp::Reel> > _reels; + std::list<std::shared_ptr<dcp::Reel> > _reels; - std::list<boost::shared_ptr<dcp::Reel> >::iterator _reel; + std::list<std::shared_ptr<dcp::Reel> >::iterator _reel; /** Offset of _reel from the start of the content in frames */ int64_t _offset; /** Reader for current mono picture asset, if applicable */ - boost::shared_ptr<dcp::MonoPictureAssetReader> _mono_reader; + std::shared_ptr<dcp::MonoPictureAssetReader> _mono_reader; /** Reader for current stereo picture asset, if applicable */ - boost::shared_ptr<dcp::StereoPictureAssetReader> _stereo_reader; + std::shared_ptr<dcp::StereoPictureAssetReader> _stereo_reader; /** Reader for current sound asset, if applicable */ - boost::shared_ptr<dcp::SoundAssetReader> _sound_reader; - boost::shared_ptr<dcp::AtmosAssetReader> _atmos_reader; + std::shared_ptr<dcp::SoundAssetReader> _sound_reader; + std::shared_ptr<dcp::AtmosAssetReader> _atmos_reader; boost::optional<AtmosMetadata> _atmos_metadata; bool _decode_referenced; diff --git a/src/lib/dcp_encoder.cc b/src/lib/dcp_encoder.cc index c530492cf..dfd8ed8d7 100644 --- a/src/lib/dcp_encoder.cc +++ b/src/lib/dcp_encoder.cc @@ -47,9 +47,9 @@ using std::string; using std::cout; using std::list; using std::vector; -using boost::shared_ptr; -using boost::weak_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::weak_ptr; +using std::dynamic_pointer_cast; using boost::optional; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; diff --git a/src/lib/dcp_encoder.h b/src/lib/dcp_encoder.h index e5df30fb5..65782d968 100644 --- a/src/lib/dcp_encoder.h +++ b/src/lib/dcp_encoder.h @@ -24,7 +24,6 @@ #include "dcp_text_track.h" #include "encoder.h" #include <dcp/atmos_frame.h> -#include <boost/weak_ptr.hpp> class Film; class J2KEncoder; @@ -38,7 +37,7 @@ class AudioBuffers; class DCPEncoder : public Encoder { public: - DCPEncoder (boost::shared_ptr<const Film> film, boost::weak_ptr<Job> job); + DCPEncoder (std::shared_ptr<const Film> film, std::weak_ptr<Job> job); ~DCPEncoder (); void go (); @@ -53,13 +52,13 @@ public: private: - void video (boost::shared_ptr<PlayerVideo>, dcpomatic::DCPTime); - void audio (boost::shared_ptr<AudioBuffers>, dcpomatic::DCPTime); + void video (std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime); + void audio (std::shared_ptr<AudioBuffers>, dcpomatic::DCPTime); void text (PlayerText, TextType, boost::optional<DCPTextTrack>, dcpomatic::DCPTimePeriod); - void atmos (boost::shared_ptr<const dcp::AtmosFrame>, dcpomatic::DCPTime, AtmosMetadata metadata); + void atmos (std::shared_ptr<const dcp::AtmosFrame>, dcpomatic::DCPTime, AtmosMetadata metadata); - boost::shared_ptr<Writer> _writer; - boost::shared_ptr<J2KEncoder> _j2k_encoder; + std::shared_ptr<Writer> _writer; + std::shared_ptr<J2KEncoder> _j2k_encoder; bool _finishing; bool _non_burnt_subtitles; diff --git a/src/lib/dcp_examiner.cc b/src/lib/dcp_examiner.cc index 27eb74a5d..fc1fbc53a 100644 --- a/src/lib/dcp_examiner.cc +++ b/src/lib/dcp_examiner.cc @@ -53,8 +53,8 @@ using std::list; using std::cout; using std::runtime_error; using std::map; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; DCPExaminer::DCPExaminer (shared_ptr<const DCPContent> content, bool tolerant) : DCP (content, tolerant) diff --git a/src/lib/dcp_examiner.h b/src/lib/dcp_examiner.h index 232d7f0d8..f577e2b35 100644 --- a/src/lib/dcp_examiner.h +++ b/src/lib/dcp_examiner.h @@ -34,7 +34,7 @@ class DCPContent; class DCPExaminer : public DCP, public VideoExaminer, public AudioExaminer { public: - explicit DCPExaminer (boost::shared_ptr<const DCPContent>, bool tolerant); + explicit DCPExaminer (std::shared_ptr<const DCPContent>, bool tolerant); bool has_video () const { return _has_video; diff --git a/src/lib/dcp_subtitle.cc b/src/lib/dcp_subtitle.cc index f9aa7e0d9..6f579b2d3 100644 --- a/src/lib/dcp_subtitle.cc +++ b/src/lib/dcp_subtitle.cc @@ -28,7 +28,7 @@ using std::string; using std::exception; -using boost::shared_ptr; +using std::shared_ptr; shared_ptr<dcp::SubtitleAsset> DCPSubtitle::load (boost::filesystem::path file) const diff --git a/src/lib/dcp_subtitle.h b/src/lib/dcp_subtitle.h index 66e7a3f25..9cd0685aa 100644 --- a/src/lib/dcp_subtitle.h +++ b/src/lib/dcp_subtitle.h @@ -21,7 +21,6 @@ #ifndef DCPOMATIC_DCP_SUBTITLE_H #define DCPOMATIC_DCP_SUBTITLE_H -#include <boost/shared_ptr.hpp> #include <boost/filesystem.hpp> namespace dcp { @@ -31,7 +30,7 @@ namespace dcp { class DCPSubtitle { protected: - boost::shared_ptr<dcp::SubtitleAsset> load (boost::filesystem::path) const; + std::shared_ptr<dcp::SubtitleAsset> load (boost::filesystem::path) const; }; #endif diff --git a/src/lib/dcp_subtitle_content.cc b/src/lib/dcp_subtitle_content.cc index 43936314b..d58779ee2 100644 --- a/src/lib/dcp_subtitle_content.cc +++ b/src/lib/dcp_subtitle_content.cc @@ -33,8 +33,8 @@ using std::string; using std::list; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using dcp::raw_convert; using namespace dcpomatic; diff --git a/src/lib/dcp_subtitle_content.h b/src/lib/dcp_subtitle_content.h index 5ff409546..f4a767d21 100644 --- a/src/lib/dcp_subtitle_content.h +++ b/src/lib/dcp_subtitle_content.h @@ -27,11 +27,11 @@ public: DCPSubtitleContent (boost::filesystem::path); DCPSubtitleContent (cxml::ConstNodePtr, int); - void examine (boost::shared_ptr<const Film> film, boost::shared_ptr<Job>); + void examine (std::shared_ptr<const Film> film, std::shared_ptr<Job>); std::string summary () const; std::string technical_summary () const; void as_xml (xmlpp::Node *, bool with_paths) const; - dcpomatic::DCPTime full_length (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime full_length (std::shared_ptr<const Film> film) const; dcpomatic::DCPTime approximate_length () const; private: diff --git a/src/lib/dcp_subtitle_decoder.cc b/src/lib/dcp_subtitle_decoder.cc index 16a738a51..5c14b7885 100644 --- a/src/lib/dcp_subtitle_decoder.cc +++ b/src/lib/dcp_subtitle_decoder.cc @@ -29,8 +29,8 @@ using std::list; using std::map; using std::string; using std::vector; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::bind; using namespace dcpomatic; diff --git a/src/lib/dcp_subtitle_decoder.h b/src/lib/dcp_subtitle_decoder.h index b53b88ded..31b8e6a8e 100644 --- a/src/lib/dcp_subtitle_decoder.h +++ b/src/lib/dcp_subtitle_decoder.h @@ -27,7 +27,7 @@ class DCPSubtitleContent; class DCPSubtitleDecoder : public DCPSubtitle, public Decoder { public: - DCPSubtitleDecoder (boost::shared_ptr<const Film> film, boost::shared_ptr<const DCPSubtitleContent>); + DCPSubtitleDecoder (std::shared_ptr<const Film> film, std::shared_ptr<const DCPSubtitleContent>); bool pass (); void seek (dcpomatic::ContentTime time, bool accurate); @@ -35,10 +35,10 @@ public: std::vector<dcpomatic::FontData> fonts () const; private: - dcpomatic::ContentTimePeriod content_time_period (boost::shared_ptr<dcp::Subtitle> s) const; + dcpomatic::ContentTimePeriod content_time_period (std::shared_ptr<dcp::Subtitle> s) const; - std::list<boost::shared_ptr<dcp::Subtitle> > _subtitles; - std::list<boost::shared_ptr<dcp::Subtitle> >::const_iterator _next; + std::list<std::shared_ptr<dcp::Subtitle> > _subtitles; + std::list<std::shared_ptr<dcp::Subtitle> >::const_iterator _next; std::vector<dcpomatic::FontData> _fonts; }; diff --git a/src/lib/dcp_video.cc b/src/lib/dcp_video.cc index ffeb23a46..ddad3d8e0 100644 --- a/src/lib/dcp_video.cc +++ b/src/lib/dcp_video.cc @@ -58,7 +58,7 @@ DCPOMATIC_ENABLE_WARNINGS using std::string; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; using dcp::Size; using dcp::ArrayData; using dcp::raw_convert; diff --git a/src/lib/dcp_video.h b/src/lib/dcp_video.h index aa11d7d3c..5d8b9b720 100644 --- a/src/lib/dcp_video.h +++ b/src/lib/dcp_video.h @@ -42,8 +42,8 @@ class PlayerVideo; class DCPVideo : public boost::noncopyable { public: - DCPVideo (boost::shared_ptr<const PlayerVideo>, int, int, int, Resolution); - DCPVideo (boost::shared_ptr<const PlayerVideo>, cxml::ConstNodePtr); + DCPVideo (std::shared_ptr<const PlayerVideo>, int, int, int, Resolution); + DCPVideo (std::shared_ptr<const PlayerVideo>, cxml::ConstNodePtr); dcp::ArrayData encode_locally (); dcp::ArrayData encode_remotely (EncodeServerDescription, int timeout = 30); @@ -54,15 +54,15 @@ public: Eyes eyes () const; - bool same (boost::shared_ptr<const DCPVideo> other) const; + bool same (std::shared_ptr<const DCPVideo> other) const; - static boost::shared_ptr<dcp::OpenJPEGImage> convert_to_xyz (boost::shared_ptr<const PlayerVideo> frame, dcp::NoteHandler note); + static std::shared_ptr<dcp::OpenJPEGImage> convert_to_xyz (std::shared_ptr<const PlayerVideo> frame, dcp::NoteHandler note); private: void add_metadata (xmlpp::Element *) const; - boost::shared_ptr<const PlayerVideo> _frame; + std::shared_ptr<const PlayerVideo> _frame; int _index; ///< frame index within the DCP's intrinsic duration int _frames_per_second; ///< Frames per second that we will use for the DCP int _j2k_bandwidth; ///< J2K bandwidth to use diff --git a/src/lib/dcpomatic_log.cc b/src/lib/dcpomatic_log.cc index 63b5ad375..a64dc907c 100644 --- a/src/lib/dcpomatic_log.cc +++ b/src/lib/dcpomatic_log.cc @@ -22,4 +22,4 @@ #include "null_log.h" /** The current log; set up by the front-ends when they have a Film to log into */ -boost::shared_ptr<Log> dcpomatic_log (new NullLog()); +std::shared_ptr<Log> dcpomatic_log (new NullLog()); diff --git a/src/lib/dcpomatic_log.h b/src/lib/dcpomatic_log.h index d5d230414..c557bb17d 100644 --- a/src/lib/dcpomatic_log.h +++ b/src/lib/dcpomatic_log.h @@ -20,10 +20,9 @@ #include "log.h" #include "compose.hpp" -#include <boost/shared_ptr.hpp> /** The current log; set up by the front-ends when they have a Film to log into */ -extern boost::shared_ptr<Log> dcpomatic_log; +extern std::shared_ptr<Log> dcpomatic_log; #define LOG_GENERAL(...) dcpomatic_log->log(String::compose(__VA_ARGS__), LogEntry::TYPE_GENERAL); #define LOG_GENERAL_NC(...) dcpomatic_log->log(__VA_ARGS__, LogEntry::TYPE_GENERAL); diff --git a/src/lib/dcpomatic_socket.cc b/src/lib/dcpomatic_socket.cc index 580c7d36b..a92a294e6 100644 --- a/src/lib/dcpomatic_socket.cc +++ b/src/lib/dcpomatic_socket.cc @@ -28,8 +28,8 @@ #include "i18n.h" -using boost::shared_ptr; -using boost::weak_ptr; +using std::shared_ptr; +using std::weak_ptr; /** @param timeout Timeout in seconds */ Socket::Socket (int timeout) diff --git a/src/lib/dcpomatic_socket.h b/src/lib/dcpomatic_socket.h index 1fa0b046f..49a278588 100644 --- a/src/lib/dcpomatic_socket.h +++ b/src/lib/dcpomatic_socket.h @@ -22,7 +22,6 @@ #include <boost/asio.hpp> #include <boost/noncopyable.hpp> #include <boost/scoped_ptr.hpp> -#include <boost/weak_ptr.hpp> /** @class Socket * @brief A class to wrap a boost::asio::ip::tcp::socket with some things @@ -52,10 +51,10 @@ public: class ReadDigestScope { public: - ReadDigestScope (boost::shared_ptr<Socket> socket); + ReadDigestScope (std::shared_ptr<Socket> socket); bool check (); private: - boost::weak_ptr<Socket> _socket; + std::weak_ptr<Socket> _socket; }; /** After one of these is created everything that is sent from the socket will be @@ -65,10 +64,10 @@ public: class WriteDigestScope { public: - WriteDigestScope (boost::shared_ptr<Socket> socket); + WriteDigestScope (std::shared_ptr<Socket> socket); ~WriteDigestScope (); private: - boost::weak_ptr<Socket> _socket; + std::weak_ptr<Socket> _socket; }; private: diff --git a/src/lib/decoder.cc b/src/lib/decoder.cc index d51282b53..a53118061 100644 --- a/src/lib/decoder.cc +++ b/src/lib/decoder.cc @@ -27,8 +27,8 @@ using std::cout; using boost::optional; -using boost::shared_ptr; -using boost::weak_ptr; +using std::shared_ptr; +using std::weak_ptr; using namespace dcpomatic; Decoder::Decoder (weak_ptr<const Film> film) diff --git a/src/lib/decoder.h b/src/lib/decoder.h index 169d55553..da5be4af6 100644 --- a/src/lib/decoder.h +++ b/src/lib/decoder.h @@ -45,15 +45,15 @@ class DecoderPart; class Decoder : public boost::noncopyable, public WeakConstFilm { public: - Decoder (boost::weak_ptr<const Film> film); + Decoder (std::weak_ptr<const Film> film); virtual ~Decoder () {} - boost::shared_ptr<VideoDecoder> video; - boost::shared_ptr<AudioDecoder> audio; - std::list<boost::shared_ptr<TextDecoder> > text; - boost::shared_ptr<AtmosDecoder> atmos; + std::shared_ptr<VideoDecoder> video; + std::shared_ptr<AudioDecoder> audio; + std::list<std::shared_ptr<TextDecoder> > text; + std::shared_ptr<AtmosDecoder> atmos; - boost::shared_ptr<TextDecoder> only_text () const; + std::shared_ptr<TextDecoder> only_text () const; /** Do some decoding and perhaps emit video, audio or subtitle data. * @return true if this decoder will emit no more data unless a seek() happens. diff --git a/src/lib/decoder_factory.cc b/src/lib/decoder_factory.cc index 12e3f3ddd..f68a443b5 100644 --- a/src/lib/decoder_factory.cc +++ b/src/lib/decoder_factory.cc @@ -36,8 +36,8 @@ #include <boost/foreach.hpp> using std::list; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; template <class T> shared_ptr<T> diff --git a/src/lib/decoder_factory.h b/src/lib/decoder_factory.h index 0cd90a585..1a39f37e2 100644 --- a/src/lib/decoder_factory.h +++ b/src/lib/decoder_factory.h @@ -20,10 +20,10 @@ class ImageDecoder; -extern boost::shared_ptr<Decoder> decoder_factory ( - boost::shared_ptr<const Film> film, - boost::shared_ptr<const Content> content, +extern std::shared_ptr<Decoder> decoder_factory ( + std::shared_ptr<const Film> film, + std::shared_ptr<const Content> content, bool fast, bool tolerant, - boost::shared_ptr<Decoder> old_decoder + std::shared_ptr<Decoder> old_decoder ); diff --git a/src/lib/decoder_part.cc b/src/lib/decoder_part.cc index 3e06204de..2bab1603e 100644 --- a/src/lib/decoder_part.cc +++ b/src/lib/decoder_part.cc @@ -21,7 +21,7 @@ #include "decoder_part.h" #include "decoder.h" -using boost::shared_ptr; +using std::shared_ptr; DecoderPart::DecoderPart (Decoder* parent) : _parent (parent) diff --git a/src/lib/decoder_part.h b/src/lib/decoder_part.h index c8e13445a..96225f3dd 100644 --- a/src/lib/decoder_part.h +++ b/src/lib/decoder_part.h @@ -34,7 +34,7 @@ public: DecoderPart (Decoder* parent); virtual ~DecoderPart () {} - virtual boost::optional<dcpomatic::ContentTime> position (boost::shared_ptr<const Film> film) const = 0; + virtual boost::optional<dcpomatic::ContentTime> position (std::shared_ptr<const Film> film) const = 0; virtual void seek () = 0; void set_ignore (bool i) { diff --git a/src/lib/dkdm_recipient.cc b/src/lib/dkdm_recipient.cc index b9db06152..a12d95a4c 100644 --- a/src/lib/dkdm_recipient.cc +++ b/src/lib/dkdm_recipient.cc @@ -27,7 +27,7 @@ using std::string; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; using dcp::raw_convert; diff --git a/src/lib/dkdm_recipient.h b/src/lib/dkdm_recipient.h index ecaccd0a0..7cf59a495 100644 --- a/src/lib/dkdm_recipient.h +++ b/src/lib/dkdm_recipient.h @@ -54,9 +54,9 @@ public: KDMWithMetadataPtr kdm_for_dkdm_recipient ( - boost::shared_ptr<const Film> film, + std::shared_ptr<const Film> film, boost::filesystem::path cpl, - boost::shared_ptr<DKDMRecipient> recipient, + std::shared_ptr<DKDMRecipient> recipient, boost::posix_time::ptime valid_from, boost::posix_time::ptime valid_to ); diff --git a/src/lib/dkdm_wrapper.cc b/src/lib/dkdm_wrapper.cc index 23539bd94..66f67114d 100644 --- a/src/lib/dkdm_wrapper.cc +++ b/src/lib/dkdm_wrapper.cc @@ -29,8 +29,8 @@ DCPOMATIC_ENABLE_WARNINGS using std::string; using std::list; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; shared_ptr<DKDMBase> DKDMBase::read (cxml::ConstNodePtr node) diff --git a/src/lib/dkdm_wrapper.h b/src/lib/dkdm_wrapper.h index 09e9d25c4..261cdc767 100644 --- a/src/lib/dkdm_wrapper.h +++ b/src/lib/dkdm_wrapper.h @@ -20,7 +20,8 @@ #include <dcp/encrypted_kdm.h> #include <libcxml/cxml.h> -#include <boost/enable_shared_from_this.hpp> +#include <memory> + namespace xmlpp { class Element; @@ -28,25 +29,25 @@ namespace xmlpp { class DKDMGroup; -class DKDMBase : public boost::enable_shared_from_this<DKDMBase> +class DKDMBase : public std::enable_shared_from_this<DKDMBase> { public: virtual ~DKDMBase () {} virtual std::string name () const = 0; virtual void as_xml (xmlpp::Element *) const = 0; - static boost::shared_ptr<DKDMBase> read (cxml::ConstNodePtr node); + static std::shared_ptr<DKDMBase> read (cxml::ConstNodePtr node); - boost::shared_ptr<DKDMGroup> parent () const { + std::shared_ptr<DKDMGroup> parent () const { return _parent; } - void set_parent (boost::shared_ptr<DKDMGroup> parent) { + void set_parent (std::shared_ptr<DKDMGroup> parent) { _parent = parent; } private: - boost::shared_ptr<DKDMGroup> _parent; + std::shared_ptr<DKDMGroup> _parent; }; class DKDM : public DKDMBase @@ -80,14 +81,14 @@ public: void as_xml (xmlpp::Element *) const; - std::list<boost::shared_ptr<DKDMBase> > children () const { + std::list<std::shared_ptr<DKDMBase> > children () const { return _children; } - void add (boost::shared_ptr<DKDMBase> child, boost::shared_ptr<DKDM> previous = boost::shared_ptr<DKDM> ()); - void remove (boost::shared_ptr<DKDMBase> child); + void add (std::shared_ptr<DKDMBase> child, std::shared_ptr<DKDM> previous = std::shared_ptr<DKDM> ()); + void remove (std::shared_ptr<DKDMBase> child); private: std::string _name; - std::list<boost::shared_ptr<DKDMBase> > _children; + std::list<std::shared_ptr<DKDMBase> > _children; }; diff --git a/src/lib/emailer.cc b/src/lib/emailer.cc index 6fe537eb1..b7cae7079 100644 --- a/src/lib/emailer.cc +++ b/src/lib/emailer.cc @@ -34,7 +34,7 @@ using std::min; using std::list; using std::cout; using std::pair; -using boost::shared_ptr; +using std::shared_ptr; using dcp::ArrayData; Emailer::Emailer (string from, list<string> to, string subject, string body) diff --git a/src/lib/empty.cc b/src/lib/empty.cc index c145c231b..00baaeb14 100644 --- a/src/lib/empty.cc +++ b/src/lib/empty.cc @@ -31,8 +31,8 @@ using std::cout; using std::list; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::function; using namespace dcpomatic; diff --git a/src/lib/empty.h b/src/lib/empty.h index 2368c4491..2a975562a 100644 --- a/src/lib/empty.h +++ b/src/lib/empty.h @@ -35,7 +35,7 @@ class Empty { public: Empty () {} - Empty (boost::shared_ptr<const Film> film, boost::shared_ptr<const Playlist> playlist, boost::function<bool (boost::shared_ptr<const Content>)> part, dcpomatic::DCPTime length); + Empty (std::shared_ptr<const Film> film, std::shared_ptr<const Playlist> playlist, boost::function<bool (std::shared_ptr<const Content>)> part, dcpomatic::DCPTime length); dcpomatic::DCPTime position () const { return _position; diff --git a/src/lib/encode_server.cc b/src/lib/encode_server.cc index 9e096fdfa..a14578a6b 100644 --- a/src/lib/encode_server.cc +++ b/src/lib/encode_server.cc @@ -60,7 +60,7 @@ using std::list; using std::cout; using std::cerr; using std::fixed; -using boost::shared_ptr; +using std::shared_ptr; using boost::thread; using boost::bind; using boost::scoped_array; diff --git a/src/lib/encode_server.h b/src/lib/encode_server.h index a43cea7ef..d313a851d 100644 --- a/src/lib/encode_server.h +++ b/src/lib/encode_server.h @@ -48,14 +48,14 @@ public: void run (); private: - void handle (boost::shared_ptr<Socket>); + void handle (std::shared_ptr<Socket>); void worker_thread (); - int process (boost::shared_ptr<Socket> socket, struct timeval &, struct timeval &); + int process (std::shared_ptr<Socket> socket, struct timeval &, struct timeval &); void broadcast_thread (); void broadcast_received (); boost::thread_group _worker_threads; - std::list<boost::shared_ptr<Socket> > _queue; + std::list<std::shared_ptr<Socket> > _queue; boost::condition _full_condition; boost::condition _empty_condition; bool _verbose; diff --git a/src/lib/encode_server_finder.cc b/src/lib/encode_server_finder.cc index c823d868f..5a5a2bfb7 100644 --- a/src/lib/encode_server_finder.cc +++ b/src/lib/encode_server_finder.cc @@ -37,9 +37,9 @@ using std::string; using std::list; using std::vector; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; using boost::scoped_array; -using boost::weak_ptr; +using std::weak_ptr; using boost::optional; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; diff --git a/src/lib/encode_server_finder.h b/src/lib/encode_server_finder.h index 78b72fa9c..a58c75382 100644 --- a/src/lib/encode_server_finder.h +++ b/src/lib/encode_server_finder.h @@ -64,7 +64,7 @@ private: boost::optional<std::list<EncodeServerDescription>::iterator> server_found (std::string); void start_accept (); - void handle_accept (boost::system::error_code ec, boost::shared_ptr<Socket> socket); + void handle_accept (boost::system::error_code ec, std::shared_ptr<Socket> socket); void config_changed (Config::Property what); @@ -79,7 +79,7 @@ private: mutable boost::mutex _servers_mutex; boost::asio::io_service _listen_io_service; - boost::shared_ptr<boost::asio::ip::tcp::acceptor> _listen_acceptor; + std::shared_ptr<boost::asio::ip::tcp::acceptor> _listen_acceptor; bool _stop; boost::condition _search_condition; diff --git a/src/lib/encoder.cc b/src/lib/encoder.cc index 0a29989b1..fd826deb6 100644 --- a/src/lib/encoder.cc +++ b/src/lib/encoder.cc @@ -31,8 +31,8 @@ #include "i18n.h" -using boost::weak_ptr; -using boost::shared_ptr; +using std::weak_ptr; +using std::shared_ptr; /** Construct an encoder. * @param film Film that we are encoding. diff --git a/src/lib/encoder.h b/src/lib/encoder.h index 792029a91..78c1f9908 100644 --- a/src/lib/encoder.h +++ b/src/lib/encoder.h @@ -23,7 +23,6 @@ #include "types.h" #include "player_text.h" -#include <boost/weak_ptr.hpp> #include <boost/signals2.hpp> class Film; @@ -37,7 +36,7 @@ class AudioBuffers; class Encoder : public boost::noncopyable { public: - Encoder (boost::shared_ptr<const Film> film, boost::weak_ptr<Job> job); + Encoder (std::shared_ptr<const Film> film, std::weak_ptr<Job> job); virtual ~Encoder () {} virtual void go () = 0; @@ -52,9 +51,9 @@ public: virtual bool finishing () const = 0; protected: - boost::shared_ptr<const Film> _film; - boost::weak_ptr<Job> _job; - boost::shared_ptr<Player> _player; + std::shared_ptr<const Film> _film; + std::weak_ptr<Job> _job; + std::shared_ptr<Player> _player; }; #endif diff --git a/src/lib/environment_info.cc b/src/lib/environment_info.cc index 31279acfb..fd44100cd 100644 --- a/src/lib/environment_info.cc +++ b/src/lib/environment_info.cc @@ -38,7 +38,7 @@ extern "C" { using std::string; using std::list; using std::pair; -using boost::shared_ptr; +using std::shared_ptr; /** @param v Version as used by FFmpeg. * @return A string representation of v. diff --git a/src/lib/examine_content_job.cc b/src/lib/examine_content_job.cc index 3be38863d..fb9439155 100644 --- a/src/lib/examine_content_job.cc +++ b/src/lib/examine_content_job.cc @@ -29,7 +29,7 @@ using std::string; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; ExamineContentJob::ExamineContentJob (shared_ptr<const Film> film, shared_ptr<Content> c) : Job (film) diff --git a/src/lib/examine_content_job.h b/src/lib/examine_content_job.h index 0105035ff..00d27a342 100644 --- a/src/lib/examine_content_job.h +++ b/src/lib/examine_content_job.h @@ -19,24 +19,23 @@ */ #include "job.h" -#include <boost/shared_ptr.hpp> class Content; class ExamineContentJob : public Job { public: - ExamineContentJob (boost::shared_ptr<const Film>, boost::shared_ptr<Content>); + ExamineContentJob (std::shared_ptr<const Film>, std::shared_ptr<Content>); ~ExamineContentJob (); std::string name () const; std::string json_name () const; void run (); - boost::shared_ptr<Content> content () const { + std::shared_ptr<Content> content () const { return _content; } private: - boost::shared_ptr<Content> _content; + std::shared_ptr<Content> _content; }; diff --git a/src/lib/examine_ffmpeg_subtitles_job.cc b/src/lib/examine_ffmpeg_subtitles_job.cc index b2bba11cd..90589eb28 100644 --- a/src/lib/examine_ffmpeg_subtitles_job.cc +++ b/src/lib/examine_ffmpeg_subtitles_job.cc @@ -33,7 +33,7 @@ extern "C" { using std::string; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; ExamineFFmpegSubtitlesJob::ExamineFFmpegSubtitlesJob (shared_ptr<const Film> film, shared_ptr<FFmpegContent> c) : Job (film) diff --git a/src/lib/examine_ffmpeg_subtitles_job.h b/src/lib/examine_ffmpeg_subtitles_job.h index 0a0101193..c9c0cabf4 100644 --- a/src/lib/examine_ffmpeg_subtitles_job.h +++ b/src/lib/examine_ffmpeg_subtitles_job.h @@ -20,14 +20,13 @@ #include "job.h" #include "ffmpeg.h" -#include <boost/shared_ptr.hpp> class FFmpegContent; class ExamineFFmpegSubtitlesJob : public Job, public FFmpeg { public: - ExamineFFmpegSubtitlesJob (boost::shared_ptr<const Film>, boost::shared_ptr<FFmpegContent>); + ExamineFFmpegSubtitlesJob (std::shared_ptr<const Film>, std::shared_ptr<FFmpegContent>); ~ExamineFFmpegSubtitlesJob (); std::string name () const; @@ -35,5 +34,5 @@ public: void run (); private: - boost::shared_ptr<FFmpegContent> _content; + std::shared_ptr<FFmpegContent> _content; }; diff --git a/src/lib/ffmpeg.cc b/src/lib/ffmpeg.cc index f9c1ef063..11a332bdb 100644 --- a/src/lib/ffmpeg.cc +++ b/src/lib/ffmpeg.cc @@ -46,14 +46,14 @@ using std::string; using std::cout; using std::cerr; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using dcp::raw_convert; using namespace dcpomatic; boost::mutex FFmpeg::_mutex; -FFmpeg::FFmpeg (boost::shared_ptr<const FFmpegContent> c) +FFmpeg::FFmpeg (std::shared_ptr<const FFmpegContent> c) : _ffmpeg_content (c) , _avio_buffer (0) , _avio_buffer_size (4096) diff --git a/src/lib/ffmpeg.h b/src/lib/ffmpeg.h index e6399c076..a9823007b 100644 --- a/src/lib/ffmpeg.h +++ b/src/lib/ffmpeg.h @@ -29,7 +29,6 @@ extern "C" { #include <libavcodec/avcodec.h> } DCPOMATIC_ENABLE_WARNINGS -#include <boost/shared_ptr.hpp> #include <boost/thread/mutex.hpp> struct AVFormatContext; @@ -43,10 +42,10 @@ class Log; class FFmpeg { public: - explicit FFmpeg (boost::shared_ptr<const FFmpegContent>); + explicit FFmpeg (std::shared_ptr<const FFmpegContent>); virtual ~FFmpeg (); - boost::shared_ptr<const FFmpegContent> ffmpeg_content () const { + std::shared_ptr<const FFmpegContent> ffmpeg_content () const { return _ffmpeg_content; } @@ -57,12 +56,12 @@ protected: AVCodecContext* video_codec_context () const; AVCodecContext* subtitle_codec_context () const; dcpomatic::ContentTime pts_offset ( - std::vector<boost::shared_ptr<FFmpegAudioStream> > audio_streams, boost::optional<dcpomatic::ContentTime> first_video, double video_frame_rate + std::vector<std::shared_ptr<FFmpegAudioStream> > audio_streams, boost::optional<dcpomatic::ContentTime> first_video, double video_frame_rate ) const; static FFmpegSubtitlePeriod subtitle_period (AVSubtitle const & sub); - boost::shared_ptr<const FFmpegContent> _ffmpeg_content; + std::shared_ptr<const FFmpegContent> _ffmpeg_content; uint8_t* _avio_buffer; int _avio_buffer_size; @@ -87,7 +86,7 @@ private: void setup_decoders (); static void ffmpeg_log_callback (void* ptr, int level, const char* fmt, va_list vl); - static boost::weak_ptr<Log> _ffmpeg_log; + static std::weak_ptr<Log> _ffmpeg_log; }; #endif diff --git a/src/lib/ffmpeg_content.cc b/src/lib/ffmpeg_content.cc index ac62ac7f4..6f3aceff8 100644 --- a/src/lib/ffmpeg_content.cc +++ b/src/lib/ffmpeg_content.cc @@ -53,8 +53,8 @@ using std::cout; using std::pair; using std::make_pair; using std::max; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::optional; using dcp::raw_convert; using namespace dcpomatic; diff --git a/src/lib/ffmpeg_content.h b/src/lib/ffmpeg_content.h index f933e4195..fccc7ad99 100644 --- a/src/lib/ffmpeg_content.h +++ b/src/lib/ffmpeg_content.h @@ -49,22 +49,22 @@ class FFmpegContent : public Content public: FFmpegContent (boost::filesystem::path); FFmpegContent (cxml::ConstNodePtr, int version, std::list<std::string> &); - FFmpegContent (std::vector<boost::shared_ptr<Content> >); + FFmpegContent (std::vector<std::shared_ptr<Content> >); - boost::shared_ptr<FFmpegContent> shared_from_this () { - return boost::dynamic_pointer_cast<FFmpegContent> (Content::shared_from_this ()); + std::shared_ptr<FFmpegContent> shared_from_this () { + return std::dynamic_pointer_cast<FFmpegContent> (Content::shared_from_this ()); } - boost::shared_ptr<const FFmpegContent> shared_from_this () const { - return boost::dynamic_pointer_cast<const FFmpegContent> (Content::shared_from_this ()); + std::shared_ptr<const FFmpegContent> shared_from_this () const { + return std::dynamic_pointer_cast<const FFmpegContent> (Content::shared_from_this ()); } - void examine (boost::shared_ptr<const Film> film, boost::shared_ptr<Job>); - void take_settings_from (boost::shared_ptr<const Content> c); + void examine (std::shared_ptr<const Film> film, std::shared_ptr<Job>); + void take_settings_from (std::shared_ptr<const Content> c); std::string summary () const; std::string technical_summary () const; void as_xml (xmlpp::Node *, bool with_paths) const; - dcpomatic::DCPTime full_length (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime full_length (std::shared_ptr<const Film> film) const; dcpomatic::DCPTime approximate_length () const; std::string identifier () const; @@ -73,24 +73,24 @@ public: void set_filters (std::vector<Filter const *> const &); - std::vector<boost::shared_ptr<FFmpegSubtitleStream> > subtitle_streams () const { + std::vector<std::shared_ptr<FFmpegSubtitleStream> > subtitle_streams () const { boost::mutex::scoped_lock lm (_mutex); return _subtitle_streams; } - boost::shared_ptr<FFmpegSubtitleStream> subtitle_stream () const { + std::shared_ptr<FFmpegSubtitleStream> subtitle_stream () const { boost::mutex::scoped_lock lm (_mutex); return _subtitle_stream; } - std::vector<boost::shared_ptr<FFmpegAudioStream> > ffmpeg_audio_streams () const; + std::vector<std::shared_ptr<FFmpegAudioStream> > ffmpeg_audio_streams () const; std::vector<Filter const *> filters () const { boost::mutex::scoped_lock lm (_mutex); return _filters; } - void set_subtitle_stream (boost::shared_ptr<FFmpegSubtitleStream>); + void set_subtitle_stream (std::shared_ptr<FFmpegSubtitleStream>); boost::optional<dcpomatic::ContentTime> first_video () const { boost::mutex::scoped_lock lm (_mutex); @@ -100,13 +100,13 @@ public: void signal_subtitle_stream_changed (); private: - void add_properties (boost::shared_ptr<const Film> film, std::list<UserProperty> &) const; + void add_properties (std::shared_ptr<const Film> film, std::list<UserProperty> &) const; friend struct ffmpeg_pts_offset_test; friend struct audio_sampling_rate_test; - std::vector<boost::shared_ptr<FFmpegSubtitleStream> > _subtitle_streams; - boost::shared_ptr<FFmpegSubtitleStream> _subtitle_stream; + std::vector<std::shared_ptr<FFmpegSubtitleStream> > _subtitle_streams; + std::shared_ptr<FFmpegSubtitleStream> _subtitle_stream; boost::optional<dcpomatic::ContentTime> _first_video; /** Video filters that should be used when generating DCPs */ std::vector<Filter const *> _filters; diff --git a/src/lib/ffmpeg_decoder.cc b/src/lib/ffmpeg_decoder.cc index 0d6539061..ae4ab237f 100644 --- a/src/lib/ffmpeg_decoder.cc +++ b/src/lib/ffmpeg_decoder.cc @@ -68,11 +68,11 @@ using std::min; using std::pair; using std::max; using std::map; -using boost::shared_ptr; +using std::shared_ptr; using boost::is_any_of; using boost::split; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using dcp::Size; using namespace dcpomatic; diff --git a/src/lib/ffmpeg_decoder.h b/src/lib/ffmpeg_decoder.h index 65f36a004..ca42e013e 100644 --- a/src/lib/ffmpeg_decoder.h +++ b/src/lib/ffmpeg_decoder.h @@ -28,7 +28,6 @@ extern "C" { #include <libavcodec/avcodec.h> } -#include <boost/shared_ptr.hpp> #include <boost/thread/mutex.hpp> #include <stdint.h> @@ -45,7 +44,7 @@ struct ffmpeg_pts_offset_test; class FFmpegDecoder : public FFmpeg, public Decoder { public: - FFmpegDecoder (boost::shared_ptr<const Film> film, boost::shared_ptr<const FFmpegContent>, bool fast); + FFmpegDecoder (std::shared_ptr<const Film> film, std::shared_ptr<const FFmpegContent>, bool fast); bool pass (); void seek (dcpomatic::ContentTime time, bool); @@ -55,8 +54,8 @@ private: void flush (); - AVSampleFormat audio_sample_format (boost::shared_ptr<FFmpegAudioStream> stream) const; - int bytes_per_audio_sample (boost::shared_ptr<FFmpegAudioStream> stream) const; + AVSampleFormat audio_sample_format (std::shared_ptr<FFmpegAudioStream> stream) const; + int bytes_per_audio_sample (std::shared_ptr<FFmpegAudioStream> stream) const; bool decode_video_packet (); void decode_audio_packet (); @@ -66,9 +65,9 @@ private: void decode_ass_subtitle (std::string ass, dcpomatic::ContentTime from); void maybe_add_subtitle (); - boost::shared_ptr<AudioBuffers> deinterleave_audio (boost::shared_ptr<FFmpegAudioStream> stream) const; + std::shared_ptr<AudioBuffers> deinterleave_audio (std::shared_ptr<FFmpegAudioStream> stream) const; - std::list<boost::shared_ptr<VideoFilterGraph> > _filter_graphs; + std::list<std::shared_ptr<VideoFilterGraph> > _filter_graphs; boost::mutex _filter_graphs_mutex; dcpomatic::ContentTime _pts_offset; @@ -76,7 +75,7 @@ private: /** true if we have a subtitle which has not had emit_stop called for it yet */ bool _have_current_subtitle; - boost::shared_ptr<Image> _black_image; + std::shared_ptr<Image> _black_image; std::vector<boost::optional<dcpomatic::ContentTime> > _next_time; }; diff --git a/src/lib/ffmpeg_encoder.cc b/src/lib/ffmpeg_encoder.cc index 443e16939..4e1f0bcb5 100644 --- a/src/lib/ffmpeg_encoder.cc +++ b/src/lib/ffmpeg_encoder.cc @@ -38,9 +38,9 @@ using std::cout; using std::pair; using std::list; using std::map; -using boost::shared_ptr; +using std::shared_ptr; using boost::bind; -using boost::weak_ptr; +using std::weak_ptr; using boost::optional; using namespace dcpomatic; #if BOOST_VERSION >= 106100 @@ -279,7 +279,7 @@ FFmpegEncoder::FileEncoderSet::get (Eyes eyes) const } } - map<Eyes, boost::shared_ptr<FFmpegFileEncoder> >::const_iterator i = _encoders.find (eyes); + map<Eyes, std::shared_ptr<FFmpegFileEncoder> >::const_iterator i = _encoders.find (eyes); DCPOMATIC_ASSERT (i != _encoders.end()); return i->second; } @@ -287,7 +287,7 @@ FFmpegEncoder::FileEncoderSet::get (Eyes eyes) const void FFmpegEncoder::FileEncoderSet::flush () { - for (map<Eyes, boost::shared_ptr<FFmpegFileEncoder> >::iterator i = _encoders.begin(); i != _encoders.end(); ++i) { + for (map<Eyes, std::shared_ptr<FFmpegFileEncoder> >::iterator i = _encoders.begin(); i != _encoders.end(); ++i) { i->second->flush (); } } @@ -295,7 +295,7 @@ FFmpegEncoder::FileEncoderSet::flush () void FFmpegEncoder::FileEncoderSet::audio (shared_ptr<AudioBuffers> a) { - for (map<Eyes, boost::shared_ptr<FFmpegFileEncoder> >::iterator i = _encoders.begin(); i != _encoders.end(); ++i) { + for (map<Eyes, std::shared_ptr<FFmpegFileEncoder> >::iterator i = _encoders.begin(); i != _encoders.end(); ++i) { i->second->audio (a); } } diff --git a/src/lib/ffmpeg_encoder.h b/src/lib/ffmpeg_encoder.h index c71f8fa63..710364b01 100644 --- a/src/lib/ffmpeg_encoder.h +++ b/src/lib/ffmpeg_encoder.h @@ -32,8 +32,8 @@ class FFmpegEncoder : public Encoder { public: FFmpegEncoder ( - boost::shared_ptr<const Film> film, - boost::weak_ptr<Job> job, + std::shared_ptr<const Film> film, + std::weak_ptr<Job> job, boost::filesystem::path output, ExportFormat format, bool mixdown_to_stereo, @@ -68,12 +68,12 @@ private: std::string extension ); - boost::shared_ptr<FFmpegFileEncoder> get (Eyes eyes) const; + std::shared_ptr<FFmpegFileEncoder> get (Eyes eyes) const; void flush (); - void audio (boost::shared_ptr<AudioBuffers>); + void audio (std::shared_ptr<AudioBuffers>); private: - std::map<Eyes, boost::shared_ptr<FFmpegFileEncoder> > _encoders; + std::map<Eyes, std::shared_ptr<FFmpegFileEncoder> > _encoders; }; int _output_audio_channels; @@ -89,7 +89,7 @@ private: bool _audio_stream_per_channel; int _x264_crf; - boost::shared_ptr<Butler> _butler; + std::shared_ptr<Butler> _butler; }; #endif diff --git a/src/lib/ffmpeg_examiner.cc b/src/lib/ffmpeg_examiner.cc index bfd7e7722..b75d6c514 100644 --- a/src/lib/ffmpeg_examiner.cc +++ b/src/lib/ffmpeg_examiner.cc @@ -45,7 +45,7 @@ using std::string; using std::cout; using std::max; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/ffmpeg_examiner.h b/src/lib/ffmpeg_examiner.h index 3852f51a5..394e51409 100644 --- a/src/lib/ffmpeg_examiner.h +++ b/src/lib/ffmpeg_examiner.h @@ -31,7 +31,7 @@ class Job; class FFmpegExaminer : public FFmpeg, public VideoExaminer { public: - FFmpegExaminer (boost::shared_ptr<const FFmpegContent>, boost::shared_ptr<Job> job = boost::shared_ptr<Job> ()); + FFmpegExaminer (std::shared_ptr<const FFmpegContent>, std::shared_ptr<Job> job = std::shared_ptr<Job> ()); bool has_video () const; @@ -41,11 +41,11 @@ public: boost::optional<double> sample_aspect_ratio () const; bool yuv () const; - std::vector<boost::shared_ptr<FFmpegSubtitleStream> > subtitle_streams () const { + std::vector<std::shared_ptr<FFmpegSubtitleStream> > subtitle_streams () const { return _subtitle_streams; } - std::vector<boost::shared_ptr<FFmpegAudioStream> > audio_streams () const { + std::vector<std::shared_ptr<FFmpegAudioStream> > audio_streams () const { return _audio_streams; } @@ -83,14 +83,14 @@ public: private: void video_packet (AVCodecContext *, std::string& temporal_reference); - void audio_packet (AVCodecContext *, boost::shared_ptr<FFmpegAudioStream>); + void audio_packet (AVCodecContext *, std::shared_ptr<FFmpegAudioStream>); std::string stream_name (AVStream* s) const; std::string subtitle_stream_name (AVStream* s) const; boost::optional<dcpomatic::ContentTime> frame_time (AVStream* s) const; - std::vector<boost::shared_ptr<FFmpegSubtitleStream> > _subtitle_streams; - std::vector<boost::shared_ptr<FFmpegAudioStream> > _audio_streams; + std::vector<std::shared_ptr<FFmpegSubtitleStream> > _subtitle_streams; + std::vector<std::shared_ptr<FFmpegAudioStream> > _audio_streams; boost::optional<dcpomatic::ContentTime> _first_video; /** Video length, either obtained from the header or derived by running * through the whole file. @@ -115,6 +115,6 @@ private: dcpomatic::ContentTime time; }; - typedef std::map<boost::shared_ptr<FFmpegSubtitleStream>, boost::optional<SubtitleStart> > LastSubtitleMap; + typedef std::map<std::shared_ptr<FFmpegSubtitleStream>, boost::optional<SubtitleStart> > LastSubtitleMap; LastSubtitleMap _last_subtitle_start; }; diff --git a/src/lib/ffmpeg_file_encoder.cc b/src/lib/ffmpeg_file_encoder.cc index e527b1820..99637564a 100644 --- a/src/lib/ffmpeg_file_encoder.cc +++ b/src/lib/ffmpeg_file_encoder.cc @@ -35,9 +35,9 @@ using std::string; using std::runtime_error; using std::cout; using std::pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::bind; -using boost::weak_ptr; +using std::weak_ptr; using boost::optional; using namespace dcpomatic; #if BOOST_VERSION >= 106100 diff --git a/src/lib/ffmpeg_file_encoder.h b/src/lib/ffmpeg_file_encoder.h index 08fc4778b..d644a1939 100644 --- a/src/lib/ffmpeg_file_encoder.h +++ b/src/lib/ffmpeg_file_encoder.h @@ -51,8 +51,8 @@ public: ~FFmpegFileEncoder (); - void video (boost::shared_ptr<PlayerVideo>, dcpomatic::DCPTime); - void audio (boost::shared_ptr<AudioBuffers>); + void video (std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime); + void audio (std::shared_ptr<AudioBuffers>); void subtitle (PlayerText, dcpomatic::DCPTimePeriod); void flush (); @@ -70,7 +70,7 @@ private: AVCodec* _video_codec; AVCodecContext* _video_codec_context; - std::vector<boost::shared_ptr<ExportAudioStream> > _audio_streams; + std::vector<std::shared_ptr<ExportAudioStream> > _audio_streams; bool _audio_stream_per_channel; AVFormatContext* _format_context; AVStream* _video_stream; @@ -88,12 +88,12 @@ private: int64_t _audio_frames; - boost::shared_ptr<AudioBuffers> _pending_audio; + std::shared_ptr<AudioBuffers> _pending_audio; /** Store of shared_ptr<Image> to keep them alive whilst raw pointers into their data have been passed to FFmpeg. */ - std::map<uint8_t*, boost::shared_ptr<const Image> > _pending_images; + std::map<uint8_t*, std::shared_ptr<const Image> > _pending_images; boost::mutex _pending_images_mutex; static int _video_stream_index; diff --git a/src/lib/ffmpeg_image_proxy.cc b/src/lib/ffmpeg_image_proxy.cc index c978fc383..5b2280cfd 100644 --- a/src/lib/ffmpeg_image_proxy.cc +++ b/src/lib/ffmpeg_image_proxy.cc @@ -44,9 +44,9 @@ using std::cout; using std::pair; using std::min; using std::make_pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using dcp::raw_convert; FFmpegImageProxy::FFmpegImageProxy (boost::filesystem::path path, VideoRange video_range) diff --git a/src/lib/ffmpeg_image_proxy.h b/src/lib/ffmpeg_image_proxy.h index 4fca899f4..92689abe8 100644 --- a/src/lib/ffmpeg_image_proxy.h +++ b/src/lib/ffmpeg_image_proxy.h @@ -29,15 +29,15 @@ class FFmpegImageProxy : public ImageProxy public: explicit FFmpegImageProxy (boost::filesystem::path, VideoRange video_range); explicit FFmpegImageProxy (dcp::ArrayData, VideoRange video_range); - FFmpegImageProxy (boost::shared_ptr<cxml::Node> xml, boost::shared_ptr<Socket> socket); + FFmpegImageProxy (std::shared_ptr<cxml::Node> xml, std::shared_ptr<Socket> socket); Result image ( boost::optional<dcp::Size> size = boost::optional<dcp::Size> () ) const; void add_metadata (xmlpp::Node *) const; - void write_to_socket (boost::shared_ptr<Socket>) const; - bool same (boost::shared_ptr<const ImageProxy> other) const; + void write_to_socket (std::shared_ptr<Socket>) const; + bool same (std::shared_ptr<const ImageProxy> other) const; size_t memory_used () const; int avio_read (uint8_t* buffer, int const amount); @@ -51,6 +51,6 @@ private: failed-decode errors can give more detail. */ boost::optional<boost::filesystem::path> _path; - mutable boost::shared_ptr<Image> _image; + mutable std::shared_ptr<Image> _image; mutable boost::mutex _mutex; }; diff --git a/src/lib/file_log.cc b/src/lib/file_log.cc index b9aa84c3d..481624c2a 100644 --- a/src/lib/file_log.cc +++ b/src/lib/file_log.cc @@ -28,7 +28,7 @@ using std::cout; using std::string; using std::max; -using boost::shared_ptr; +using std::shared_ptr; /** @param file Filename to write log to */ FileLog::FileLog (boost::filesystem::path file) diff --git a/src/lib/file_log.h b/src/lib/file_log.h index 613dd0939..64e6a2505 100644 --- a/src/lib/file_log.h +++ b/src/lib/file_log.h @@ -29,7 +29,7 @@ public: std::string head_and_tail (int amount = 1024) const; private: - void do_log (boost::shared_ptr<const LogEntry> entry); + void do_log (std::shared_ptr<const LogEntry> entry); /** filename to write to */ boost::filesystem::path _file; diff --git a/src/lib/film.cc b/src/lib/film.cc index 5b8acbae9..68e5c1c1f 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -97,9 +97,9 @@ using std::back_inserter; using std::map; using std::exception; using std::find; -using boost::shared_ptr; -using boost::weak_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::weak_ptr; +using std::dynamic_pointer_cast; using boost::optional; using boost::is_any_of; #if BOOST_VERSION >= 106100 diff --git a/src/lib/film.h b/src/lib/film.h index 4c71c9e16..d79448689 100644 --- a/src/lib/film.h +++ b/src/lib/film.h @@ -36,7 +36,6 @@ #include <dcp/key.h> #include <dcp/encrypted_kdm.h> #include <boost/signals2.hpp> -#include <boost/enable_shared_from_this.hpp> #include <boost/thread.hpp> #include <boost/filesystem.hpp> #include <boost/thread/mutex.hpp> @@ -95,19 +94,19 @@ private: * * The content of a Film is held in a Playlist (created and managed by the Film). */ -class Film : public boost::enable_shared_from_this<Film>, public Signaller, public boost::noncopyable +class Film : public std::enable_shared_from_this<Film>, public Signaller, public boost::noncopyable { public: explicit Film (boost::optional<boost::filesystem::path> dir); ~Film (); - boost::shared_ptr<InfoFileHandle> info_file_handle (dcpomatic::DCPTimePeriod period, bool read) const; + std::shared_ptr<InfoFileHandle> info_file_handle (dcpomatic::DCPTimePeriod period, bool read) const; boost::filesystem::path j2c_path (int, Frame, Eyes, bool) const; boost::filesystem::path internal_video_asset_dir () const; boost::filesystem::path internal_video_asset_filename (dcpomatic::DCPTimePeriod p) const; - boost::filesystem::path audio_analysis_path (boost::shared_ptr<const Playlist>) const; - boost::filesystem::path subtitle_analysis_path (boost::shared_ptr<const Content>) const; + boost::filesystem::path audio_analysis_path (std::shared_ptr<const Playlist>) const; + boost::filesystem::path subtitle_analysis_path (std::shared_ptr<const Content>) const; void send_dcp_to_tms (); void make_dcp (bool gui = false, bool check = true); @@ -115,7 +114,7 @@ public: /** @return Logger. * It is safe to call this from any thread. */ - boost::shared_ptr<Log> log () const { + std::shared_ptr<Log> log () const { return _log; } @@ -127,9 +126,9 @@ public: void write_metadata () const; void write_metadata (boost::filesystem::path path) const; void write_template (boost::filesystem::path path) const; - boost::shared_ptr<xmlpp::Document> metadata (bool with_content_paths = true) const; + std::shared_ptr<xmlpp::Document> metadata (bool with_content_paths = true) const; - void copy_from (boost::shared_ptr<const Film> film); + void copy_from (std::shared_ptr<const Film> film); std::string isdcf_name (bool if_created_now) const; std::string dcp_name (bool if_created_now = false) const; @@ -179,7 +178,7 @@ public: void repeat_content (ContentList, int); - boost::shared_ptr<const Playlist> playlist () const { + std::shared_ptr<const Playlist> playlist () const { return _playlist; } @@ -386,12 +385,12 @@ public: void set_directory (boost::filesystem::path); void set_name (std::string); void set_use_isdcf_name (bool); - void examine_and_add_content (boost::shared_ptr<Content> content, bool disable_audio_analysis = false); - void add_content (boost::shared_ptr<Content>); - void remove_content (boost::shared_ptr<Content>); + void examine_and_add_content (std::shared_ptr<Content> content, bool disable_audio_analysis = false); + void add_content (std::shared_ptr<Content>); + void remove_content (std::shared_ptr<Content>); void remove_content (ContentList); - void move_content_earlier (boost::shared_ptr<Content>); - void move_content_later (boost::shared_ptr<Content>); + void move_content_earlier (std::shared_ptr<Content>); + void move_content_later (std::shared_ptr<Content>); void set_dcp_content_type (DCPContentType const *); void set_container (Ratio const *, bool user_explicit = true); void set_resolution (Resolution, bool user_explicit = true); @@ -432,7 +431,7 @@ public: mutable boost::signals2::signal<void (ChangeType, Property)> Change; /** Emitted when some property of our content has changed */ - mutable boost::signals2::signal<void (ChangeType, boost::weak_ptr<Content>, int, bool)> ContentChange; + mutable boost::signals2::signal<void (ChangeType, std::weak_ptr<Content>, int, bool)> ContentChange; /** Emitted when the film's length might have changed; this is not like a normal property as its value is derived from the playlist, so it has its own signal. @@ -459,9 +458,9 @@ private: std::string video_identifier () const; void playlist_change (ChangeType); void playlist_order_changed (); - void playlist_content_change (ChangeType type, boost::weak_ptr<Content>, int, bool frequent); + void playlist_content_change (ChangeType type, std::weak_ptr<Content>, int, bool frequent); void playlist_length_change (); - void maybe_add_content (boost::weak_ptr<Job>, boost::weak_ptr<Content>, bool disable_audio_analysis); + void maybe_add_content (std::weak_ptr<Job>, std::weak_ptr<Content>, bool disable_audio_analysis); void audio_analysis_finished (); void check_settings_consistency (); void maybe_set_container_and_resolution (); @@ -469,8 +468,8 @@ private: static std::string const metadata_file; /** Log to write to */ - boost::shared_ptr<Log> _log; - boost::shared_ptr<Playlist> _playlist; + std::shared_ptr<Log> _log; + std::shared_ptr<Playlist> _playlist; /** Complete path to directory containing the film metadata; * must not be relative. @@ -537,7 +536,7 @@ private: /** true if our state has changed since we last saved it */ mutable bool _dirty; /** film being used as a template, or 0 */ - boost::shared_ptr<Film> _template_film; + std::shared_ptr<Film> _template_film; /** Be tolerant of errors in content (currently applies to DCP only). Not saved as state. diff --git a/src/lib/filter_graph.cc b/src/lib/filter_graph.cc index daceeaf2d..2a690eeb9 100644 --- a/src/lib/filter_graph.cc +++ b/src/lib/filter_graph.cc @@ -42,8 +42,8 @@ using std::pair; using std::make_pair; using std::cout; using std::vector; -using boost::shared_ptr; -using boost::weak_ptr; +using std::shared_ptr; +using std::weak_ptr; using dcp::Size; /** Construct a FilterGraph for the settings in a piece of content */ diff --git a/src/lib/font_data.cc b/src/lib/font_data.cc index 83b6562f0..f6a61f24a 100644 --- a/src/lib/font_data.cc +++ b/src/lib/font_data.cc @@ -22,10 +22,9 @@ #include "font.h" #include "font_data.h" #include "dcpomatic_assert.h" -#include <boost/shared_ptr.hpp> -using boost::shared_ptr; +using std::shared_ptr; dcpomatic::FontData::FontData (shared_ptr<const Font> font) diff --git a/src/lib/font_data.h b/src/lib/font_data.h index 686fca7c9..895493ce2 100644 --- a/src/lib/font_data.h +++ b/src/lib/font_data.h @@ -38,7 +38,7 @@ class Font; class FontData { public: - FontData (boost::shared_ptr<const Font> font); + FontData (std::shared_ptr<const Font> font); FontData (std::string id_, dcp::ArrayData data_) : id(id_) diff --git a/src/lib/frame_rate_change.cc b/src/lib/frame_rate_change.cc index 8ad6de942..7b6d13892 100644 --- a/src/lib/frame_rate_change.cc +++ b/src/lib/frame_rate_change.cc @@ -28,7 +28,7 @@ #include "i18n.h" using std::string; -using boost::shared_ptr; +using std::shared_ptr; static bool about_equal (double a, double b) diff --git a/src/lib/frame_rate_change.h b/src/lib/frame_rate_change.h index acb75c0b5..d7fed6dd0 100644 --- a/src/lib/frame_rate_change.h +++ b/src/lib/frame_rate_change.h @@ -21,9 +21,11 @@ #ifndef DCPOMATIC_FRAME_RATE_CHANGE_H #define DCPOMATIC_FRAME_RATE_CHANGE_H -#include <boost/shared_ptr.hpp> + +#include <memory> #include <string> + class Film; class Content; @@ -32,8 +34,8 @@ class FrameRateChange public: FrameRateChange (); FrameRateChange (double, int); - FrameRateChange (boost::shared_ptr<const Film> film, boost::shared_ptr<const Content> content); - FrameRateChange (boost::shared_ptr<const Film> film, Content const * content); + FrameRateChange (std::shared_ptr<const Film> film, std::shared_ptr<const Content> content); + FrameRateChange (std::shared_ptr<const Film> film, Content const * content); /** @return factor by which to multiply a source frame rate to get the effective rate after any skip or repeat has happened. diff --git a/src/lib/hints.cc b/src/lib/hints.cc index 9781f24bb..e52e448cf 100644 --- a/src/lib/hints.cc +++ b/src/lib/hints.cc @@ -52,8 +52,8 @@ using std::pair; using std::min; using std::max; using std::cout; -using boost::shared_ptr; -using boost::weak_ptr; +using std::shared_ptr; +using std::weak_ptr; using boost::optional; using boost::bind; using namespace dcpomatic; diff --git a/src/lib/hints.h b/src/lib/hints.h index 9164e2106..d070dc201 100644 --- a/src/lib/hints.h +++ b/src/lib/hints.h @@ -24,7 +24,6 @@ #include "dcp_text_track.h" #include "dcpomatic_time.h" #include "weak_film.h" -#include <boost/weak_ptr.hpp> #include <boost/signals2.hpp> #include <boost/atomic.hpp> #include <vector> @@ -38,7 +37,7 @@ class Writer; class Hints : public Signaller, public ExceptionStore, public WeakConstFilm { public: - explicit Hints (boost::weak_ptr<const Film> film); + explicit Hints (std::weak_ptr<const Film> film); ~Hints (); void start (); @@ -78,7 +77,7 @@ private: * our final DCP will have. This means we can see how big the files will be and warn if they * will be too big. */ - boost::shared_ptr<Writer> _writer; + std::shared_ptr<Writer> _writer; bool _long_ccap; bool _overlap_ccap; diff --git a/src/lib/image.cc b/src/lib/image.cc index fb9efdf89..a31874e18 100644 --- a/src/lib/image.cc +++ b/src/lib/image.cc @@ -52,7 +52,7 @@ using std::cout; using std::cerr; using std::list; using std::runtime_error; -using boost::shared_ptr; +using std::shared_ptr; using dcp::Size; @@ -952,7 +952,7 @@ Image::allocate () } Image::Image (Image const & other) - : boost::enable_shared_from_this<Image>(other) + : std::enable_shared_from_this<Image>(other) , _size (other._size) , _pixel_format (other._pixel_format) , _aligned (other._aligned) diff --git a/src/lib/image.h b/src/lib/image.h index 7dd633f61..a5823656c 100644 --- a/src/lib/image.h +++ b/src/lib/image.h @@ -33,19 +33,17 @@ extern "C" { } #include <dcp/array_data.h> #include <dcp/colour_conversion.h> -#include <boost/shared_ptr.hpp> -#include <boost/enable_shared_from_this.hpp> struct AVFrame; class Socket; -class Image : public boost::enable_shared_from_this<Image> +class Image : public std::enable_shared_from_this<Image> { public: Image (AVPixelFormat p, dcp::Size s, bool aligned); explicit Image (AVFrame *); explicit Image (Image const &); - Image (boost::shared_ptr<const Image>, bool); + Image (std::shared_ptr<const Image>, bool); Image& operator= (Image const &); ~Image (); @@ -63,9 +61,9 @@ public: dcp::Size sample_size (int) const; float bytes_per_pixel (int) const; - boost::shared_ptr<Image> convert_pixel_format (dcp::YUVToRGB yuv_to_rgb, AVPixelFormat out_format, bool aligned, bool fast) const; - boost::shared_ptr<Image> scale (dcp::Size out_size, dcp::YUVToRGB yuv_to_rgb, AVPixelFormat out_format, bool aligned, bool fast) const; - boost::shared_ptr<Image> crop_scale_window ( + std::shared_ptr<Image> convert_pixel_format (dcp::YUVToRGB yuv_to_rgb, AVPixelFormat out_format, bool aligned, bool fast) const; + std::shared_ptr<Image> scale (dcp::Size out_size, dcp::YUVToRGB yuv_to_rgb, AVPixelFormat out_format, bool aligned, bool fast) const; + std::shared_ptr<Image> crop_scale_window ( Crop crop, dcp::Size inter_size, dcp::Size out_size, @@ -79,13 +77,13 @@ public: void make_black (); void make_transparent (); - void alpha_blend (boost::shared_ptr<const Image> image, Position<int> pos); - void copy (boost::shared_ptr<const Image> image, Position<int> pos); + void alpha_blend (std::shared_ptr<const Image> image, Position<int> pos); + void copy (std::shared_ptr<const Image> image, Position<int> pos); void fade (float); void video_range_to_full_range (); - void read_from_socket (boost::shared_ptr<Socket>); - void write_to_socket (boost::shared_ptr<Socket>) const; + void read_from_socket (std::shared_ptr<Socket>); + void write_to_socket (std::shared_ptr<Socket>) const; AVPixelFormat pixel_format () const { return _pixel_format; @@ -97,7 +95,7 @@ public: void png_error (char const * message); - static boost::shared_ptr<const Image> ensure_aligned (boost::shared_ptr<const Image> image); + static std::shared_ptr<const Image> ensure_aligned (std::shared_ptr<const Image> image); private: friend struct pixel_formats_test; diff --git a/src/lib/image_content.cc b/src/lib/image_content.cc index 8cf44bda1..20f32c05d 100644 --- a/src/lib/image_content.cc +++ b/src/lib/image_content.cc @@ -38,7 +38,7 @@ using std::string; using std::cout; using std::list; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; using namespace dcpomatic; ImageContent::ImageContent (boost::filesystem::path p) diff --git a/src/lib/image_content.h b/src/lib/image_content.h index 970a68d66..81396c63b 100644 --- a/src/lib/image_content.h +++ b/src/lib/image_content.h @@ -29,19 +29,19 @@ public: ImageContent (boost::filesystem::path); ImageContent (cxml::ConstNodePtr, int); - boost::shared_ptr<ImageContent> shared_from_this () { - return boost::dynamic_pointer_cast<ImageContent> (Content::shared_from_this ()); + std::shared_ptr<ImageContent> shared_from_this () { + return std::dynamic_pointer_cast<ImageContent> (Content::shared_from_this ()); }; - boost::shared_ptr<const ImageContent> shared_from_this () const { - return boost::dynamic_pointer_cast<const ImageContent> (Content::shared_from_this ()); + std::shared_ptr<const ImageContent> shared_from_this () const { + return std::dynamic_pointer_cast<const ImageContent> (Content::shared_from_this ()); }; - void examine (boost::shared_ptr<const Film> film, boost::shared_ptr<Job>); + void examine (std::shared_ptr<const Film> film, std::shared_ptr<Job>); std::string summary () const; std::string technical_summary () const; void as_xml (xmlpp::Node *, bool with_paths) const; - dcpomatic::DCPTime full_length (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime full_length (std::shared_ptr<const Film> film) const; dcpomatic::DCPTime approximate_length () const; std::string identifier () const; @@ -51,7 +51,7 @@ public: bool still () const; private: - void add_properties (boost::shared_ptr<const Film> film, std::list<UserProperty>& p) const; + void add_properties (std::shared_ptr<const Film> film, std::list<UserProperty>& p) const; boost::optional<boost::filesystem::path> _path_to_scan; }; diff --git a/src/lib/image_decoder.cc b/src/lib/image_decoder.cc index 7757cc4aa..d35a0625f 100644 --- a/src/lib/image_decoder.cc +++ b/src/lib/image_decoder.cc @@ -34,7 +34,7 @@ #include "i18n.h" using std::cout; -using boost::shared_ptr; +using std::shared_ptr; using dcp::Size; using namespace dcpomatic; diff --git a/src/lib/image_decoder.h b/src/lib/image_decoder.h index eeec779ba..d575f9021 100644 --- a/src/lib/image_decoder.h +++ b/src/lib/image_decoder.h @@ -27,9 +27,9 @@ class ImageProxy; class ImageDecoder : public Decoder { public: - ImageDecoder (boost::shared_ptr<const Film> film, boost::shared_ptr<const ImageContent> c); + ImageDecoder (std::shared_ptr<const Film> film, std::shared_ptr<const ImageContent> c); - boost::shared_ptr<const ImageContent> content () { + std::shared_ptr<const ImageContent> content () { return _image_content; } @@ -38,7 +38,7 @@ public: private: - boost::shared_ptr<const ImageContent> _image_content; - boost::shared_ptr<ImageProxy> _image; + std::shared_ptr<const ImageContent> _image_content; + std::shared_ptr<ImageProxy> _image; Frame _frame_video_position; }; diff --git a/src/lib/image_examiner.cc b/src/lib/image_examiner.cc index aa80d0daa..60dbd511b 100644 --- a/src/lib/image_examiner.cc +++ b/src/lib/image_examiner.cc @@ -38,7 +38,7 @@ using std::cout; using std::list; using std::sort; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; ImageExaminer::ImageExaminer (shared_ptr<const Film> film, shared_ptr<const ImageContent> content, shared_ptr<Job>) diff --git a/src/lib/image_examiner.h b/src/lib/image_examiner.h index ca8ecf9c8..839e390ed 100644 --- a/src/lib/image_examiner.h +++ b/src/lib/image_examiner.h @@ -25,7 +25,7 @@ class ImageContent; class ImageExaminer : public VideoExaminer { public: - ImageExaminer (boost::shared_ptr<const Film>, boost::shared_ptr<const ImageContent>, boost::shared_ptr<Job>); + ImageExaminer (std::shared_ptr<const Film>, std::shared_ptr<const ImageContent>, std::shared_ptr<Job>); bool has_video () const { return true; @@ -41,8 +41,8 @@ public: } private: - boost::weak_ptr<const Film> _film; - boost::shared_ptr<const ImageContent> _image_content; + std::weak_ptr<const Film> _film; + std::shared_ptr<const ImageContent> _image_content; boost::optional<dcp::Size> _video_size; Frame _video_length; }; diff --git a/src/lib/image_proxy.cc b/src/lib/image_proxy.cc index e16fab063..f6f6350d8 100644 --- a/src/lib/image_proxy.cc +++ b/src/lib/image_proxy.cc @@ -33,7 +33,7 @@ using std::cout; using std::string; -using boost::shared_ptr; +using std::shared_ptr; shared_ptr<ImageProxy> image_proxy_factory (shared_ptr<cxml::Node> xml, shared_ptr<Socket> socket) diff --git a/src/lib/image_proxy.h b/src/lib/image_proxy.h index 08516e718..b279e6344 100644 --- a/src/lib/image_proxy.h +++ b/src/lib/image_proxy.h @@ -29,7 +29,6 @@ extern "C" { #include <libavutil/pixfmt.h> } #include <dcp/types.h> -#include <boost/shared_ptr.hpp> #include <boost/optional.hpp> #include <boost/utility.hpp> @@ -61,20 +60,20 @@ public: virtual ~ImageProxy () {} struct Result { - Result (boost::shared_ptr<Image> image_, int log2_scaling_) + Result (std::shared_ptr<Image> image_, int log2_scaling_) : image (image_) , log2_scaling (log2_scaling_) , error (false) {} - Result (boost::shared_ptr<Image> image_, int log2_scaling_, bool error_) + Result (std::shared_ptr<Image> image_, int log2_scaling_, bool error_) : image (image_) , log2_scaling (log2_scaling_) , error (error_) {} /** Image (which will be aligned) */ - boost::shared_ptr<Image> image; + std::shared_ptr<Image> image; /** log2 of any scaling down that has already been applied to the image; * e.g. if the image is already half the size of the original, this value * will be 1. @@ -93,9 +92,9 @@ public: ) const = 0; virtual void add_metadata (xmlpp::Node *) const = 0; - virtual void write_to_socket (boost::shared_ptr<Socket>) const = 0; + virtual void write_to_socket (std::shared_ptr<Socket>) const = 0; /** @return true if our image is definitely the same as another, false if it is probably not */ - virtual bool same (boost::shared_ptr<const ImageProxy>) const = 0; + virtual bool same (std::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. @@ -104,6 +103,6 @@ public: 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); +std::shared_ptr<ImageProxy> image_proxy_factory (std::shared_ptr<cxml::Node> xml, std::shared_ptr<Socket> socket); #endif diff --git a/src/lib/isdcf_metadata.cc b/src/lib/isdcf_metadata.cc index e117dc284..368b6e3a5 100644 --- a/src/lib/isdcf_metadata.cc +++ b/src/lib/isdcf_metadata.cc @@ -30,7 +30,7 @@ DCPOMATIC_ENABLE_WARNINGS #include "i18n.h" using std::string; -using boost::shared_ptr; +using std::shared_ptr; using dcp::raw_convert; ISDCFMetadata::ISDCFMetadata (cxml::ConstNodePtr node) diff --git a/src/lib/j2k_encoder.cc b/src/lib/j2k_encoder.cc index 796523b38..273bce8fb 100644 --- a/src/lib/j2k_encoder.cc +++ b/src/lib/j2k_encoder.cc @@ -45,8 +45,8 @@ using std::list; using std::cout; using std::exception; -using boost::shared_ptr; -using boost::weak_ptr; +using std::shared_ptr; +using std::weak_ptr; using boost::optional; using dcp::Data; using namespace dcpomatic; diff --git a/src/lib/j2k_encoder.h b/src/lib/j2k_encoder.h index 818c75c99..afa010ace 100644 --- a/src/lib/j2k_encoder.h +++ b/src/lib/j2k_encoder.h @@ -29,13 +29,11 @@ #include "cross.h" #include "event_history.h" #include "exception_store.h" -#include <boost/shared_ptr.hpp> #include <boost/thread/mutex.hpp> #include <boost/thread/condition.hpp> #include <boost/thread.hpp> #include <boost/optional.hpp> #include <boost/signals2.hpp> -#include <boost/enable_shared_from_this.hpp> #include <list> #include <stdint.h> @@ -53,17 +51,17 @@ class PlayerVideo; * the work around threads and encoding servers. */ -class J2KEncoder : public boost::noncopyable, public ExceptionStore, public boost::enable_shared_from_this<J2KEncoder> +class J2KEncoder : public boost::noncopyable, public ExceptionStore, public std::enable_shared_from_this<J2KEncoder> { public: - J2KEncoder (boost::shared_ptr<const Film> film, boost::shared_ptr<Writer> writer); + J2KEncoder (std::shared_ptr<const Film> film, std::shared_ptr<Writer> writer); ~J2KEncoder (); /** Called to indicate that a processing run is about to begin */ void begin (); /** Called to pass a bit of video to be encoded as the next DCP frame */ - void encode (boost::shared_ptr<PlayerVideo> pv, dcpomatic::DCPTime time); + void encode (std::shared_ptr<PlayerVideo> pv, dcpomatic::DCPTime time); /** Called when a processing run has finished */ void end (); @@ -75,7 +73,7 @@ public: private: - static void call_servers_list_changed (boost::weak_ptr<J2KEncoder> encoder); + static void call_servers_list_changed (std::weak_ptr<J2KEncoder> encoder); void frame_done (); @@ -83,24 +81,24 @@ private: void terminate_threads (); /** Film that we are encoding */ - boost::shared_ptr<const Film> _film; + std::shared_ptr<const Film> _film; EventHistory _history; boost::mutex _threads_mutex; - boost::shared_ptr<boost::thread_group> _threads; + std::shared_ptr<boost::thread_group> _threads; mutable boost::mutex _queue_mutex; - std::list<boost::shared_ptr<DCPVideo> > _queue; + std::list<std::shared_ptr<DCPVideo> > _queue; /** condition to manage thread wakeups when we have nothing to do */ boost::condition _empty_condition; /** condition to manage thread wakeups when we have too much to do */ boost::condition _full_condition; - boost::shared_ptr<Writer> _writer; + std::shared_ptr<Writer> _writer; Waker _waker; - boost::shared_ptr<PlayerVideo> _last_player_video[EYES_COUNT]; + std::shared_ptr<PlayerVideo> _last_player_video[EYES_COUNT]; boost::optional<dcpomatic::DCPTime> _last_player_video_time; boost::signals2::scoped_connection _server_found_connection; diff --git a/src/lib/j2k_image_proxy.cc b/src/lib/j2k_image_proxy.cc index 21083504e..13305b7f3 100644 --- a/src/lib/j2k_image_proxy.cc +++ b/src/lib/j2k_image_proxy.cc @@ -43,9 +43,9 @@ using std::cout; using std::max; using std::pair; using std::make_pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using dcp::ArrayData; using dcp::raw_convert; diff --git a/src/lib/j2k_image_proxy.h b/src/lib/j2k_image_proxy.h index 3eccc213d..91c90dba7 100644 --- a/src/lib/j2k_image_proxy.h +++ b/src/lib/j2k_image_proxy.h @@ -34,33 +34,33 @@ public: J2KImageProxy (boost::filesystem::path path, dcp::Size, AVPixelFormat pixel_format); J2KImageProxy ( - boost::shared_ptr<const dcp::MonoPictureFrame> frame, + std::shared_ptr<const dcp::MonoPictureFrame> frame, dcp::Size, AVPixelFormat pixel_format, boost::optional<int> forced_reduction ); J2KImageProxy ( - boost::shared_ptr<const dcp::StereoPictureFrame> frame, + std::shared_ptr<const dcp::StereoPictureFrame> frame, dcp::Size, dcp::Eye, AVPixelFormat pixel_format, boost::optional<int> forced_reduction ); - J2KImageProxy (boost::shared_ptr<cxml::Node> xml, boost::shared_ptr<Socket> socket); + J2KImageProxy (std::shared_ptr<cxml::Node> xml, std::shared_ptr<Socket> socket); Result image ( boost::optional<dcp::Size> size = boost::optional<dcp::Size> () ) const; void add_metadata (xmlpp::Node *) const; - void write_to_socket (boost::shared_ptr<Socket>) const; + void write_to_socket (std::shared_ptr<Socket>) const; /** @return true if our image is definitely the same as another, false if it is probably not */ - bool same (boost::shared_ptr<const ImageProxy>) const; + bool same (std::shared_ptr<const ImageProxy>) const; int prepare (boost::optional<dcp::Size> = boost::optional<dcp::Size>()) const; - boost::shared_ptr<const dcp::Data> j2k () const { + std::shared_ptr<const dcp::Data> j2k () const { return _data; } @@ -76,10 +76,10 @@ private: /* For tests */ J2KImageProxy (dcp::ArrayData data, dcp::Size size, AVPixelFormat pixel_format); - boost::shared_ptr<const dcp::Data> _data; + std::shared_ptr<const dcp::Data> _data; dcp::Size _size; boost::optional<dcp::Eye> _eye; - mutable boost::shared_ptr<Image> _image; + mutable std::shared_ptr<Image> _image; mutable boost::optional<dcp::Size> _target_size; mutable boost::optional<int> _reduce; AVPixelFormat _pixel_format; diff --git a/src/lib/job.cc b/src/lib/job.cc index d960dfaee..525f86b2c 100644 --- a/src/lib/job.cc +++ b/src/lib/job.cc @@ -43,7 +43,7 @@ using std::string; using std::list; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using boost::function; using namespace dcpomatic; diff --git a/src/lib/job.h b/src/lib/job.h index a0e988fc8..d047913a0 100644 --- a/src/lib/job.h +++ b/src/lib/job.h @@ -27,7 +27,6 @@ #include "signaller.h" #include <boost/thread/mutex.hpp> -#include <boost/enable_shared_from_this.hpp> #include <boost/signals2.hpp> #include <boost/thread.hpp> #include <string> @@ -37,10 +36,10 @@ class Film; /** @class Job * @brief A parent class to represent long-running tasks which are run in their own thread. */ -class Job : public boost::enable_shared_from_this<Job>, public Signaller, public boost::noncopyable +class Job : public std::enable_shared_from_this<Job>, public Signaller, public boost::noncopyable { public: - explicit Job (boost::shared_ptr<const Film> film); + explicit Job (std::shared_ptr<const Film> film); virtual ~Job (); /** @return user-readable name of this job */ @@ -80,7 +79,7 @@ public: void sub (std::string); boost::optional<float> progress () const; - boost::shared_ptr<const Film> film () const { + std::shared_ptr<const Film> film () const { return _film; } @@ -114,7 +113,7 @@ protected: void check_for_interruption_or_pause (); void stop_thread (); - boost::shared_ptr<const Film> _film; + std::shared_ptr<const Film> _film; private: diff --git a/src/lib/job_manager.cc b/src/lib/job_manager.cc index dbaf15cbc..358820c6a 100644 --- a/src/lib/job_manager.cc +++ b/src/lib/job_manager.cc @@ -35,10 +35,10 @@ using std::string; using std::list; using std::cout; -using boost::shared_ptr; -using boost::weak_ptr; +using std::shared_ptr; +using std::weak_ptr; using boost::function; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using boost::optional; using boost::bind; diff --git a/src/lib/job_manager.h b/src/lib/job_manager.h index dd7a28db2..461688845 100644 --- a/src/lib/job_manager.h +++ b/src/lib/job_manager.h @@ -43,13 +43,13 @@ extern bool wait_for_jobs (); class JobManager : public Signaller, public boost::noncopyable { public: - boost::shared_ptr<Job> add (boost::shared_ptr<Job>); - boost::shared_ptr<Job> add_after (boost::shared_ptr<Job> after, boost::shared_ptr<Job> j); - std::list<boost::shared_ptr<Job> > get () const; + std::shared_ptr<Job> add (std::shared_ptr<Job>); + std::shared_ptr<Job> add_after (std::shared_ptr<Job> after, std::shared_ptr<Job> j); + std::list<std::shared_ptr<Job> > get () const; bool work_to_do () const; bool errors () const; - void increase_priority (boost::shared_ptr<Job>); - void decrease_priority (boost::shared_ptr<Job>); + void increase_priority (std::shared_ptr<Job>); + void decrease_priority (std::shared_ptr<Job>); void pause (); void resume (); bool paused () const { @@ -58,21 +58,21 @@ public: } void analyse_audio ( - boost::shared_ptr<const Film> film, - boost::shared_ptr<const Playlist> playlist, + std::shared_ptr<const Film> film, + std::shared_ptr<const Playlist> playlist, bool from_zero, boost::signals2::connection& connection, boost::function<void()> ready ); void analyse_subtitles ( - boost::shared_ptr<const Film> film, - boost::shared_ptr<Content> content, + std::shared_ptr<const Film> film, + std::shared_ptr<Content> content, boost::signals2::connection& connection, boost::function<void()> ready ); - boost::signals2::signal<void (boost::weak_ptr<Job>)> JobAdded; + boost::signals2::signal<void (std::weak_ptr<Job>)> JobAdded; boost::signals2::signal<void ()> JobsReordered; boost::signals2::signal<void (boost::optional<std::string>, boost::optional<std::string>)> ActiveJobsChanged; @@ -94,11 +94,11 @@ private: mutable boost::mutex _mutex; boost::condition _empty_condition; /** List of jobs in the order that they will be executed */ - std::list<boost::shared_ptr<Job> > _jobs; + std::list<std::shared_ptr<Job> > _jobs; std::list<boost::signals2::connection> _connections; bool _terminate; bool _paused; - boost::shared_ptr<Job> _paused_job; + std::shared_ptr<Job> _paused_job; boost::optional<std::string> _last_active_job; boost::thread _scheduler; diff --git a/src/lib/json_server.cc b/src/lib/json_server.cc index 211d0c846..9c1034a68 100644 --- a/src/lib/json_server.cc +++ b/src/lib/json_server.cc @@ -35,8 +35,8 @@ using std::cout; using std::map; using std::list; using boost::thread; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::asio::ip::tcp; using dcp::raw_convert; diff --git a/src/lib/json_server.h b/src/lib/json_server.h index f36e621f3..c97e496d1 100644 --- a/src/lib/json_server.h +++ b/src/lib/json_server.h @@ -27,6 +27,6 @@ public: private: void run (int port); - void handle (boost::shared_ptr<boost::asio::ip::tcp::socket> socket); - void request (std::string url, boost::shared_ptr<boost::asio::ip::tcp::socket> socket); + void handle (std::shared_ptr<boost::asio::ip::tcp::socket> socket); + void request (std::string url, std::shared_ptr<boost::asio::ip::tcp::socket> socket); }; diff --git a/src/lib/kdm_with_metadata.cc b/src/lib/kdm_with_metadata.cc index 0ef1b8f38..2747e4140 100644 --- a/src/lib/kdm_with_metadata.cc +++ b/src/lib/kdm_with_metadata.cc @@ -35,7 +35,7 @@ using std::string; using std::cout; using std::list; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using boost::function; diff --git a/src/lib/kdm_with_metadata.h b/src/lib/kdm_with_metadata.h index 2e07334de..fc80a8743 100644 --- a/src/lib/kdm_with_metadata.h +++ b/src/lib/kdm_with_metadata.h @@ -23,7 +23,6 @@ #include <dcp/encrypted_kdm.h> #include <dcp/name_format.h> -#include <boost/shared_ptr.hpp> class Cinema; @@ -67,7 +66,7 @@ private: }; -typedef boost::shared_ptr<KDMWithMetadata> KDMWithMetadataPtr; +typedef std::shared_ptr<KDMWithMetadata> KDMWithMetadataPtr; int write_files ( diff --git a/src/lib/log.cc b/src/lib/log.cc index 7851c133f..e1716f1c6 100644 --- a/src/lib/log.cc +++ b/src/lib/log.cc @@ -33,7 +33,7 @@ using std::string; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; Log::Log () : _types (0) diff --git a/src/lib/log.h b/src/lib/log.h index 873d5f7a1..c71f8ab16 100644 --- a/src/lib/log.h +++ b/src/lib/log.h @@ -41,7 +41,7 @@ public: Log (); virtual ~Log () {} - void log (boost::shared_ptr<const LogEntry> entry); + void log (std::shared_ptr<const LogEntry> entry); void log (std::string message, int type); void dcp_log (dcp::NoteType type, std::string message); @@ -64,7 +64,7 @@ protected: mutable boost::mutex _mutex; private: - virtual void do_log (boost::shared_ptr<const LogEntry> entry) = 0; + virtual void do_log (std::shared_ptr<const LogEntry> entry) = 0; /** bit-field of log types which should be put into the log (others are ignored) */ int _types; diff --git a/src/lib/mid_side_decoder.cc b/src/lib/mid_side_decoder.cc index fd80937ed..eb87d245b 100644 --- a/src/lib/mid_side_decoder.cc +++ b/src/lib/mid_side_decoder.cc @@ -27,7 +27,7 @@ using std::string; using std::min; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; string MidSideDecoder::name () const diff --git a/src/lib/mid_side_decoder.h b/src/lib/mid_side_decoder.h index e5c1e0a05..8be5db67f 100644 --- a/src/lib/mid_side_decoder.h +++ b/src/lib/mid_side_decoder.h @@ -26,8 +26,8 @@ public: std::string name () const; std::string id () const; int out_channels () const; - boost::shared_ptr<AudioProcessor> clone (int) const; - boost::shared_ptr<AudioBuffers> run (boost::shared_ptr<const AudioBuffers>, int channels); + std::shared_ptr<AudioProcessor> clone (int) const; + std::shared_ptr<AudioBuffers> run (std::shared_ptr<const AudioBuffers>, int channels); void make_audio_mapping_default (AudioMapping& mapping) const; std::vector<NamedChannel> input_names () const; }; diff --git a/src/lib/null_log.h b/src/lib/null_log.h index 01bc324cb..ce6017ca2 100644 --- a/src/lib/null_log.h +++ b/src/lib/null_log.h @@ -23,5 +23,5 @@ class NullLog : public Log { private: - void do_log (boost::shared_ptr<const LogEntry>) {} + void do_log (std::shared_ptr<const LogEntry>) {} }; diff --git a/src/lib/overlaps.cc b/src/lib/overlaps.cc index 5ed7a9832..f5ccd48d0 100644 --- a/src/lib/overlaps.cc +++ b/src/lib/overlaps.cc @@ -23,7 +23,7 @@ #include "content.h" #include <boost/foreach.hpp> -using boost::shared_ptr; +using std::shared_ptr; using boost::function; using namespace dcpomatic; diff --git a/src/lib/overlaps.h b/src/lib/overlaps.h index 9bd867030..60c0cd537 100644 --- a/src/lib/overlaps.h +++ b/src/lib/overlaps.h @@ -29,5 +29,5 @@ class Film; * ContentList */ ContentList overlaps ( - boost::shared_ptr<const Film> film, ContentList cl, boost::function<bool (boost::shared_ptr<const Content>)> part, dcpomatic::DCPTime from, dcpomatic::DCPTime to + std::shared_ptr<const Film> film, ContentList cl, boost::function<bool (std::shared_ptr<const Content>)> part, dcpomatic::DCPTime from, dcpomatic::DCPTime to ); diff --git a/src/lib/piece.h b/src/lib/piece.h index 440beecf4..a2e62d366 100644 --- a/src/lib/piece.h +++ b/src/lib/piece.h @@ -30,15 +30,15 @@ class Decoder; class Piece { public: - Piece (boost::shared_ptr<Content> c, boost::shared_ptr<Decoder> d, FrameRateChange f) + Piece (std::shared_ptr<Content> c, std::shared_ptr<Decoder> d, FrameRateChange f) : content (c) , decoder (d) , frc (f) , done (false) {} - boost::shared_ptr<Content> content; - boost::shared_ptr<Decoder> decoder; + std::shared_ptr<Content> content; + std::shared_ptr<Decoder> decoder; FrameRateChange frc; bool done; }; diff --git a/src/lib/player.cc b/src/lib/player.cc index dd11694ef..e6e8aca86 100644 --- a/src/lib/player.cc +++ b/src/lib/player.cc @@ -73,9 +73,9 @@ using std::pair; using std::map; using std::make_pair; using std::copy; -using boost::shared_ptr; -using boost::weak_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::weak_ptr; +using std::dynamic_pointer_cast; using boost::optional; using boost::scoped_ptr; #if BOOST_VERSION >= 106100 @@ -384,7 +384,7 @@ Player::black_player_video_frame (Eyes eyes) const PART_WHOLE, PresetColourConversion::all().front().conversion, VIDEO_RANGE_FULL, - boost::weak_ptr<Content>(), + std::weak_ptr<Content>(), boost::optional<Frame>(), false ) diff --git a/src/lib/player.h b/src/lib/player.h index c695e02cd..48ed568da 100644 --- a/src/lib/player.h +++ b/src/lib/player.h @@ -35,8 +35,6 @@ #include "audio_stream.h" #include "audio_merger.h" #include "empty.h" -#include <boost/shared_ptr.hpp> -#include <boost/enable_shared_from_this.hpp> #include <boost/atomic.hpp> #include <list> @@ -69,11 +67,11 @@ public: /** @class Player * @brief A class which can play a Playlist. */ -class Player : public boost::enable_shared_from_this<Player>, public boost::noncopyable +class Player : public std::enable_shared_from_this<Player>, public boost::noncopyable { public: - Player (boost::shared_ptr<const Film>); - Player (boost::shared_ptr<const Film>, boost::shared_ptr<const Playlist> playlist); + Player (std::shared_ptr<const Film>); + Player (std::shared_ptr<const Film>, std::shared_ptr<const Playlist> playlist); ~Player (); bool pass (); @@ -95,18 +93,18 @@ public: void set_play_referenced (); void set_dcp_decode_reduction (boost::optional<int> reduction); - boost::optional<dcpomatic::DCPTime> content_time_to_dcp (boost::shared_ptr<Content> content, dcpomatic::ContentTime t); + boost::optional<dcpomatic::DCPTime> content_time_to_dcp (std::shared_ptr<Content> content, dcpomatic::ContentTime t); boost::signals2::signal<void (ChangeType, int, bool)> Change; /** Emitted when a video frame is ready. These emissions happen in the correct order. */ - boost::signals2::signal<void (boost::shared_ptr<PlayerVideo>, dcpomatic::DCPTime)> Video; - boost::signals2::signal<void (boost::shared_ptr<AudioBuffers>, dcpomatic::DCPTime, int)> Audio; + boost::signals2::signal<void (std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime)> Video; + boost::signals2::signal<void (std::shared_ptr<AudioBuffers>, dcpomatic::DCPTime, int)> Audio; /** Emitted when a text is ready. This signal may be emitted considerably * after the corresponding Video. */ boost::signals2::signal<void (PlayerText, TextType, boost::optional<DCPTextTrack>, dcpomatic::DCPTimePeriod)> Text; - boost::signals2::signal<void (boost::shared_ptr<const dcp::AtmosFrame>, dcpomatic::DCPTime, AtmosMetadata)> Atmos; + boost::signals2::signal<void (std::shared_ptr<const dcp::AtmosFrame>, dcpomatic::DCPTime, AtmosMetadata)> Atmos; private: friend class PlayerWrapper; @@ -126,31 +124,31 @@ private: void film_change (ChangeType, Film::Property); void playlist_change (ChangeType); void playlist_content_change (ChangeType, int, bool); - Frame dcp_to_content_video (boost::shared_ptr<const Piece> piece, dcpomatic::DCPTime t) const; - dcpomatic::DCPTime content_video_to_dcp (boost::shared_ptr<const Piece> piece, Frame f) const; - Frame dcp_to_resampled_audio (boost::shared_ptr<const Piece> piece, dcpomatic::DCPTime t) const; - dcpomatic::DCPTime resampled_audio_to_dcp (boost::shared_ptr<const Piece> piece, Frame f) const; - dcpomatic::ContentTime dcp_to_content_time (boost::shared_ptr<const Piece> piece, dcpomatic::DCPTime t) const; - dcpomatic::DCPTime content_time_to_dcp (boost::shared_ptr<const Piece> piece, dcpomatic::ContentTime t) const; - boost::shared_ptr<PlayerVideo> black_player_video_frame (Eyes eyes) const; - - void video (boost::weak_ptr<Piece>, ContentVideo); - void audio (boost::weak_ptr<Piece>, AudioStreamPtr, ContentAudio); - void bitmap_text_start (boost::weak_ptr<Piece>, boost::weak_ptr<const TextContent>, ContentBitmapText); - void plain_text_start (boost::weak_ptr<Piece>, boost::weak_ptr<const TextContent>, ContentStringText); - void subtitle_stop (boost::weak_ptr<Piece>, boost::weak_ptr<const TextContent>, dcpomatic::ContentTime); - void atmos (boost::weak_ptr<Piece>, ContentAtmos); + Frame dcp_to_content_video (std::shared_ptr<const Piece> piece, dcpomatic::DCPTime t) const; + dcpomatic::DCPTime content_video_to_dcp (std::shared_ptr<const Piece> piece, Frame f) const; + Frame dcp_to_resampled_audio (std::shared_ptr<const Piece> piece, dcpomatic::DCPTime t) const; + dcpomatic::DCPTime resampled_audio_to_dcp (std::shared_ptr<const Piece> piece, Frame f) const; + dcpomatic::ContentTime dcp_to_content_time (std::shared_ptr<const Piece> piece, dcpomatic::DCPTime t) const; + dcpomatic::DCPTime content_time_to_dcp (std::shared_ptr<const Piece> piece, dcpomatic::ContentTime t) const; + std::shared_ptr<PlayerVideo> black_player_video_frame (Eyes eyes) const; + + void video (std::weak_ptr<Piece>, ContentVideo); + void audio (std::weak_ptr<Piece>, AudioStreamPtr, ContentAudio); + void bitmap_text_start (std::weak_ptr<Piece>, std::weak_ptr<const TextContent>, ContentBitmapText); + void plain_text_start (std::weak_ptr<Piece>, std::weak_ptr<const TextContent>, ContentStringText); + void subtitle_stop (std::weak_ptr<Piece>, std::weak_ptr<const TextContent>, dcpomatic::ContentTime); + void atmos (std::weak_ptr<Piece>, ContentAtmos); dcpomatic::DCPTime one_video_frame () const; void fill_audio (dcpomatic::DCPTimePeriod period); - std::pair<boost::shared_ptr<AudioBuffers>, dcpomatic::DCPTime> discard_audio ( - boost::shared_ptr<const AudioBuffers> audio, dcpomatic::DCPTime time, dcpomatic::DCPTime discard_to + std::pair<std::shared_ptr<AudioBuffers>, dcpomatic::DCPTime> discard_audio ( + std::shared_ptr<const AudioBuffers> audio, dcpomatic::DCPTime time, dcpomatic::DCPTime discard_to ) const; boost::optional<PositionImage> open_subtitles_for_frame (dcpomatic::DCPTime time) const; - void emit_video (boost::shared_ptr<PlayerVideo> pv, dcpomatic::DCPTime time); - void do_emit_video (boost::shared_ptr<PlayerVideo> pv, dcpomatic::DCPTime time); - void emit_audio (boost::shared_ptr<AudioBuffers> data, dcpomatic::DCPTime time); - boost::shared_ptr<const Playlist> playlist () const; + void emit_video (std::shared_ptr<PlayerVideo> pv, dcpomatic::DCPTime time); + void do_emit_video (std::shared_ptr<PlayerVideo> pv, dcpomatic::DCPTime time); + void emit_audio (std::shared_ptr<AudioBuffers> data, dcpomatic::DCPTime time); + std::shared_ptr<const Playlist> playlist () const; /** Mutex to protect the whole Player state. When it's used for the preview we have seek() and pass() called from the Butler thread and lots of other stuff called @@ -158,19 +156,19 @@ private: */ mutable boost::mutex _mutex; - boost::shared_ptr<const Film> _film; + std::shared_ptr<const Film> _film; /** Playlist, or 0 if we are using the one from the _film */ - boost::shared_ptr<const Playlist> _playlist; + std::shared_ptr<const Playlist> _playlist; /** > 0 if we are suspended (i.e. pass() and seek() do nothing) */ boost::atomic<int> _suspended; - std::list<boost::shared_ptr<Piece> > _pieces; + std::list<std::shared_ptr<Piece> > _pieces; /** Size of the image we are rendering to; this may be the DCP frame size, or * the size of preview in a window. */ dcp::Size _video_container_size; - boost::shared_ptr<Image> _black_image; + std::shared_ptr<Image> _black_image; /** true if the player should ignore all video; i.e. never produce any */ bool _ignore_video; @@ -193,24 +191,24 @@ private: boost::optional<int> _dcp_decode_reduction; - typedef std::map<boost::weak_ptr<Piece>, boost::shared_ptr<PlayerVideo> > LastVideoMap; + typedef std::map<std::weak_ptr<Piece>, std::shared_ptr<PlayerVideo>, std::owner_less<std::weak_ptr<Piece>>> LastVideoMap; LastVideoMap _last_video; AudioMerger _audio_merger; Shuffler* _shuffler; - std::list<std::pair<boost::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> > _delay; + std::list<std::pair<std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> > _delay; class StreamState { public: StreamState () {} - StreamState (boost::shared_ptr<Piece> p, dcpomatic::DCPTime l) + StreamState (std::shared_ptr<Piece> p, dcpomatic::DCPTime l) : piece(p) , last_push_end(l) {} - boost::shared_ptr<Piece> piece; + std::shared_ptr<Piece> piece; dcpomatic::DCPTime last_push_end; }; std::map<AudioStreamPtr, StreamState> _stream_states; @@ -219,7 +217,7 @@ private: Empty _silent; ActiveText _active_texts[TEXT_COUNT]; - boost::shared_ptr<AudioProcessor> _audio_processor; + std::shared_ptr<AudioProcessor> _audio_processor; dcpomatic::DCPTime _playback_length; diff --git a/src/lib/player_text.cc b/src/lib/player_text.cc index d31c7d024..d2448efa6 100644 --- a/src/lib/player_text.cc +++ b/src/lib/player_text.cc @@ -23,7 +23,7 @@ #include <boost/foreach.hpp> using std::list; -using boost::shared_ptr; +using std::shared_ptr; using namespace dcpomatic; void diff --git a/src/lib/player_text.h b/src/lib/player_text.h index fb1d846d8..232ba6516 100644 --- a/src/lib/player_text.h +++ b/src/lib/player_text.h @@ -33,8 +33,8 @@ namespace dcpomatic { class PlayerText { public: - void add_fonts (std::list<boost::shared_ptr<dcpomatic::Font> > fonts_); - std::list<boost::shared_ptr<dcpomatic::Font> > fonts; + void add_fonts (std::list<std::shared_ptr<dcpomatic::Font> > fonts_); + std::list<std::shared_ptr<dcpomatic::Font> > fonts; /** BitmapTexts, with their rectangles transformed as specified by their content */ std::list<BitmapText> bitmap; diff --git a/src/lib/player_video.cc b/src/lib/player_video.cc index 4f8acd5e2..683fc27fc 100644 --- a/src/lib/player_video.cc +++ b/src/lib/player_video.cc @@ -36,9 +36,9 @@ extern "C" { using std::string; using std::cout; using std::pair; -using boost::shared_ptr; -using boost::weak_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::weak_ptr; +using std::dynamic_pointer_cast; using boost::optional; using boost::function; using dcp::Data; diff --git a/src/lib/player_video.h b/src/lib/player_video.h index 0952eafb9..faf5d6832 100644 --- a/src/lib/player_video.h +++ b/src/lib/player_video.h @@ -29,8 +29,6 @@ extern "C" { #include <libavutil/pixfmt.h> } -#include <boost/shared_ptr.hpp> -#include <boost/weak_ptr.hpp> #include <boost/thread/mutex.hpp> #include <boost/noncopyable.hpp> @@ -47,7 +45,7 @@ class PlayerVideo : public boost::noncopyable { public: PlayerVideo ( - boost::shared_ptr<const ImageProxy>, + std::shared_ptr<const ImageProxy>, Crop, boost::optional<double>, dcp::Size, @@ -56,30 +54,30 @@ public: Part, boost::optional<ColourConversion>, VideoRange video_range, - boost::weak_ptr<Content>, + std::weak_ptr<Content>, boost::optional<Frame>, bool error ); - PlayerVideo (boost::shared_ptr<cxml::Node>, boost::shared_ptr<Socket>); + PlayerVideo (std::shared_ptr<cxml::Node>, std::shared_ptr<Socket>); - boost::shared_ptr<PlayerVideo> shallow_copy () const; + std::shared_ptr<PlayerVideo> shallow_copy () const; void set_text (PositionImage); void prepare (boost::function<AVPixelFormat (AVPixelFormat)> pixel_format, VideoRange video_range, bool aligned, bool fast); - boost::shared_ptr<Image> image (boost::function<AVPixelFormat (AVPixelFormat)> pixel_format, VideoRange video_range, bool aligned, bool fast) const; + std::shared_ptr<Image> image (boost::function<AVPixelFormat (AVPixelFormat)> pixel_format, VideoRange video_range, bool aligned, bool fast) const; static AVPixelFormat force (AVPixelFormat, AVPixelFormat); static AVPixelFormat keep_xyz_or_rgb (AVPixelFormat); void add_metadata (xmlpp::Node* node) const; - void write_to_socket (boost::shared_ptr<Socket> socket) const; + void write_to_socket (std::shared_ptr<Socket> socket) const; - bool reset_metadata (boost::shared_ptr<const Film> film, dcp::Size player_video_container_size); + bool reset_metadata (std::shared_ptr<const Film> film, dcp::Size player_video_container_size); bool has_j2k () const; - boost::shared_ptr<const dcp::Data> j2k () const; + std::shared_ptr<const dcp::Data> j2k () const; Eyes eyes () const { return _eyes; @@ -101,11 +99,11 @@ public: return _inter_size; } - bool same (boost::shared_ptr<const PlayerVideo> other) const; + bool same (std::shared_ptr<const PlayerVideo> other) const; size_t memory_used () const; - boost::weak_ptr<Content> content () const { + std::weak_ptr<Content> content () const { return _content; } @@ -116,7 +114,7 @@ public: private: void make_image (boost::function<AVPixelFormat (AVPixelFormat)> pixel_format, VideoRange video_range, bool aligned, bool fast) const; - boost::shared_ptr<const ImageProxy> _in; + std::shared_ptr<const ImageProxy> _in; Crop _crop; boost::optional<double> _fade; dcp::Size _inter_size; @@ -127,12 +125,12 @@ private: VideoRange _video_range; boost::optional<PositionImage> _text; /** Content that we came from. This is so that reset_metadata() can work. */ - boost::weak_ptr<Content> _content; + std::weak_ptr<Content> _content; /** Video frame that we came from. Again, this is for reset_metadata() */ boost::optional<Frame> _video_frame; mutable boost::mutex _mutex; - mutable boost::shared_ptr<Image> _image; + mutable std::shared_ptr<Image> _image; /** _crop that was used to make _image */ mutable Crop _image_crop; /** _inter_size that was used to make _image */ diff --git a/src/lib/playlist.cc b/src/lib/playlist.cc index 89990a427..287f23fd4 100644 --- a/src/lib/playlist.cc +++ b/src/lib/playlist.cc @@ -35,7 +35,6 @@ #include <libcxml/cxml.h> #include <libxml++/libxml++.h> #include <boost/bind/placeholders.hpp> -#include <boost/shared_ptr.hpp> #include <boost/foreach.hpp> #include <iostream> @@ -49,9 +48,9 @@ using std::max; using std::string; using std::pair; using boost::optional; -using boost::shared_ptr; -using boost::weak_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::weak_ptr; +using std::dynamic_pointer_cast; using namespace dcpomatic; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; diff --git a/src/lib/playlist.h b/src/lib/playlist.h index 51c13e33f..b49baa430 100644 --- a/src/lib/playlist.h +++ b/src/lib/playlist.h @@ -24,7 +24,6 @@ #include "util.h" #include "frame_rate_change.h" #include <libcxml/cxml.h> -#include <boost/shared_ptr.hpp> #include <boost/signals2.hpp> #include <boost/thread.hpp> #include <list> @@ -33,7 +32,7 @@ class Film; struct ContentSorter { - bool operator() (boost::shared_ptr<Content> a, boost::shared_ptr<Content> b); + bool operator() (std::shared_ptr<Content> a, std::shared_ptr<Content> b); }; /** @class Playlist @@ -47,33 +46,33 @@ public: ~Playlist (); void as_xml (xmlpp::Node *, bool with_content_paths); - void set_from_xml (boost::shared_ptr<const Film> film, cxml::ConstNodePtr node, int version, std::list<std::string>& notes); + void set_from_xml (std::shared_ptr<const Film> film, cxml::ConstNodePtr node, int version, std::list<std::string>& notes); - void add (boost::shared_ptr<const Film> film, boost::shared_ptr<Content>); - void remove (boost::shared_ptr<Content>); + void add (std::shared_ptr<const Film> film, std::shared_ptr<Content>); + void remove (std::shared_ptr<Content>); void remove (ContentList); - void move_earlier (boost::shared_ptr<const Film> film, boost::shared_ptr<Content>); - void move_later (boost::shared_ptr<const Film> film, boost::shared_ptr<Content>); + void move_earlier (std::shared_ptr<const Film> film, std::shared_ptr<Content>); + void move_later (std::shared_ptr<const Film> film, std::shared_ptr<Content>); ContentList content () const; std::string video_identifier () const; - dcpomatic::DCPTime length (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime length (std::shared_ptr<const Film> film) const; boost::optional<dcpomatic::DCPTime> start () const; - int64_t required_disk_space (boost::shared_ptr<const Film> film, int j2k_bandwidth, int audio_channels, int audio_frame_rate) const; + int64_t required_disk_space (std::shared_ptr<const Film> film, int j2k_bandwidth, int audio_channels, int audio_frame_rate) const; int best_video_frame_rate () const; - dcpomatic::DCPTime video_end (boost::shared_ptr<const Film> film) const; - dcpomatic::DCPTime text_end (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime video_end (std::shared_ptr<const Film> film) const; + dcpomatic::DCPTime text_end (std::shared_ptr<const Film> film) const; FrameRateChange active_frame_rate_change (dcpomatic::DCPTime, int dcp_frame_rate) const; - std::string content_summary (boost::shared_ptr<const Film> film, dcpomatic::DCPTimePeriod period) const; + std::string content_summary (std::shared_ptr<const Film> film, dcpomatic::DCPTimePeriod period) const; std::pair<double, double> speed_up_range (int dcp_video_frame_rate) const; void set_sequence (bool); - void maybe_sequence (boost::shared_ptr<const Film> film); + void maybe_sequence (std::shared_ptr<const Film> film); - void repeat (boost::shared_ptr<const Film> film, ContentList, int); + void repeat (std::shared_ptr<const Film> film, ContentList, int); /** Emitted when content has been added to or removed from the playlist; implies OrderChanged */ mutable boost::signals2::signal<void (ChangeType)> Change; @@ -81,12 +80,12 @@ public: /** Emitted when the length might have changed; may sometimes be emitted when it has not */ mutable boost::signals2::signal<void ()> LengthChange; - mutable boost::signals2::signal<void (ChangeType, boost::weak_ptr<Content>, int, bool)> ContentChange; + mutable boost::signals2::signal<void (ChangeType, std::weak_ptr<Content>, int, bool)> ContentChange; private: - void content_change (boost::weak_ptr<const Film>, ChangeType, boost::weak_ptr<Content>, int, bool); + void content_change (std::weak_ptr<const Film>, ChangeType, std::weak_ptr<Content>, int, bool); void disconnect (); - void reconnect (boost::shared_ptr<const Film> film); + void reconnect (std::shared_ptr<const Film> film); mutable boost::mutex _mutex; /** List of content. Kept sorted in position order. */ diff --git a/src/lib/position_image.h b/src/lib/position_image.h index 3e6d833e7..b78effbd5 100644 --- a/src/lib/position_image.h +++ b/src/lib/position_image.h @@ -21,8 +21,10 @@ #ifndef DCPOMATIC_POSITION_IMAGE_H #define DCPOMATIC_POSITION_IMAGE_H + #include "position.h" -#include <boost/shared_ptr.hpp> +#include <memory> + class Image; @@ -31,12 +33,12 @@ class PositionImage public: PositionImage () {} - PositionImage (boost::shared_ptr<Image> i, Position<int> p) + PositionImage (std::shared_ptr<Image> i, Position<int> p) : image (i) , position (p) {} - boost::shared_ptr<Image> image; + std::shared_ptr<Image> image; Position<int> position; bool same (PositionImage const & other) const; diff --git a/src/lib/raw_image_proxy.cc b/src/lib/raw_image_proxy.cc index 09902c3a2..667f25b06 100644 --- a/src/lib/raw_image_proxy.cc +++ b/src/lib/raw_image_proxy.cc @@ -36,8 +36,8 @@ DCPOMATIC_ENABLE_WARNINGS using std::string; using std::pair; using std::make_pair; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::optional; using dcp::raw_convert; diff --git a/src/lib/raw_image_proxy.h b/src/lib/raw_image_proxy.h index 7971d4a10..7cd9491fa 100644 --- a/src/lib/raw_image_proxy.h +++ b/src/lib/raw_image_proxy.h @@ -26,20 +26,20 @@ 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<Image>); + RawImageProxy (std::shared_ptr<cxml::Node> xml, std::shared_ptr<Socket> socket); Result image ( boost::optional<dcp::Size> size = boost::optional<dcp::Size> () ) const; void add_metadata (xmlpp::Node *) const; - void write_to_socket (boost::shared_ptr<Socket>) const; - bool same (boost::shared_ptr<const ImageProxy>) const; + void write_to_socket (std::shared_ptr<Socket>) const; + bool same (std::shared_ptr<const ImageProxy>) const; size_t memory_used () const; private: - boost::shared_ptr<Image> _image; + std::shared_ptr<Image> _image; }; #endif diff --git a/src/lib/reel_writer.cc b/src/lib/reel_writer.cc index 009b2dc15..110102b70 100644 --- a/src/lib/reel_writer.cc +++ b/src/lib/reel_writer.cc @@ -62,13 +62,13 @@ using std::exception; using std::map; using std::set; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; #endif -using boost::weak_ptr; +using std::weak_ptr; using dcp::ArrayData; using dcp::Data; using dcp::raw_convert; diff --git a/src/lib/reel_writer.h b/src/lib/reel_writer.h index 3d214878b..019917abc 100644 --- a/src/lib/reel_writer.h +++ b/src/lib/reel_writer.h @@ -27,8 +27,6 @@ #include "weak_film.h" #include <dcp/picture_asset_writer.h> #include <dcp/atmos_asset_writer.h> -#include <boost/shared_ptr.hpp> -#include <boost/weak_ptr.hpp> namespace dcpomatic { class FontData; @@ -60,23 +58,23 @@ class ReelWriter : public WeakConstFilm { public: ReelWriter ( - boost::weak_ptr<const Film> film, + std::weak_ptr<const Film> film, dcpomatic::DCPTimePeriod period, - boost::shared_ptr<Job> job, + std::shared_ptr<Job> job, int reel_index, int reel_count, bool text_only ); - void write (boost::shared_ptr<const dcp::Data> encoded, Frame frame, Eyes eyes); + void write (std::shared_ptr<const dcp::Data> encoded, Frame frame, Eyes eyes); void fake_write (int size); void repeat_write (Frame frame, Eyes eyes); - void write (boost::shared_ptr<const AudioBuffers> audio); + void write (std::shared_ptr<const AudioBuffers> audio); void write (PlayerText text, TextType type, boost::optional<DCPTextTrack> track, dcpomatic::DCPTimePeriod period); - void write (boost::shared_ptr<const dcp::AtmosFrame> atmos, AtmosMetadata metadata); + void write (std::shared_ptr<const dcp::AtmosFrame> atmos, AtmosMetadata metadata); void finish (boost::filesystem::path output_dcp); - boost::shared_ptr<dcp::Reel> create_reel ( + std::shared_ptr<dcp::Reel> create_reel ( std::list<ReferencedReelAsset> const & refs, std::vector<dcpomatic::FontData> const & fonts, boost::filesystem::path output_dcp, @@ -95,7 +93,7 @@ public: return _first_nonexistant_frame; } - dcp::FrameInfo read_frame_info (boost::shared_ptr<InfoFileHandle> info, Frame frame, Eyes eyes) const; + dcp::FrameInfo read_frame_info (std::shared_ptr<InfoFileHandle> info, Frame frame, Eyes eyes) const; private: @@ -104,13 +102,13 @@ private: void write_frame_info (Frame frame, Eyes eyes, dcp::FrameInfo info) const; long frame_info_position (Frame frame, Eyes eyes) const; Frame check_existing_picture_asset (boost::filesystem::path asset); - bool existing_picture_frame_ok (FILE* asset_file, boost::shared_ptr<InfoFileHandle> info_file, Frame frame) const; - boost::shared_ptr<dcp::SubtitleAsset> empty_text_asset (TextType type, boost::optional<DCPTextTrack> track) const; + bool existing_picture_frame_ok (FILE* asset_file, std::shared_ptr<InfoFileHandle> info_file, Frame frame) const; + std::shared_ptr<dcp::SubtitleAsset> empty_text_asset (TextType type, boost::optional<DCPTextTrack> track) const; - boost::shared_ptr<dcp::ReelPictureAsset> create_reel_picture (boost::shared_ptr<dcp::Reel> reel, std::list<ReferencedReelAsset> const & refs) const; - void create_reel_sound (boost::shared_ptr<dcp::Reel> reel, std::list<ReferencedReelAsset> const & refs) const; + std::shared_ptr<dcp::ReelPictureAsset> create_reel_picture (std::shared_ptr<dcp::Reel> reel, std::list<ReferencedReelAsset> const & refs) const; + void create_reel_sound (std::shared_ptr<dcp::Reel> reel, std::list<ReferencedReelAsset> const & refs) const; void create_reel_text ( - boost::shared_ptr<dcp::Reel> reel, + std::shared_ptr<dcp::Reel> reel, std::list<ReferencedReelAsset> const & refs, std::vector<dcpomatic::FontData> const& fonts, int64_t duration, @@ -118,32 +116,32 @@ private: bool ensure_subtitles, std::set<DCPTextTrack> ensure_closed_captions ) const; - void create_reel_markers (boost::shared_ptr<dcp::Reel> reel) const; + void create_reel_markers (std::shared_ptr<dcp::Reel> reel) const; dcpomatic::DCPTimePeriod _period; /** the first picture frame index that does not already exist in our MXF */ int _first_nonexistant_frame; /** the data of the last written frame, if there is one */ - boost::shared_ptr<const dcp::Data> _last_written[EYES_COUNT]; + std::shared_ptr<const dcp::Data> _last_written[EYES_COUNT]; /** index of this reel within the DCP (starting from 0) */ int _reel_index; /** number of reels in the DCP */ int _reel_count; boost::optional<std::string> _content_summary; - boost::weak_ptr<Job> _job; + std::weak_ptr<Job> _job; bool _text_only; dcp::ArrayData _default_font; - boost::shared_ptr<dcp::PictureAsset> _picture_asset; + std::shared_ptr<dcp::PictureAsset> _picture_asset; /** picture asset writer, or 0 if we are not writing any picture because we already have one */ - boost::shared_ptr<dcp::PictureAssetWriter> _picture_asset_writer; - boost::shared_ptr<dcp::SoundAsset> _sound_asset; - boost::shared_ptr<dcp::SoundAssetWriter> _sound_asset_writer; - boost::shared_ptr<dcp::SubtitleAsset> _subtitle_asset; - std::map<DCPTextTrack, boost::shared_ptr<dcp::SubtitleAsset> > _closed_caption_assets; - boost::shared_ptr<dcp::AtmosAsset> _atmos_asset; - boost::shared_ptr<dcp::AtmosAssetWriter> _atmos_asset_writer; + std::shared_ptr<dcp::PictureAssetWriter> _picture_asset_writer; + std::shared_ptr<dcp::SoundAsset> _sound_asset; + std::shared_ptr<dcp::SoundAssetWriter> _sound_asset_writer; + std::shared_ptr<dcp::SubtitleAsset> _subtitle_asset; + std::map<DCPTextTrack, std::shared_ptr<dcp::SubtitleAsset> > _closed_caption_assets; + std::shared_ptr<dcp::AtmosAsset> _atmos_asset; + std::shared_ptr<dcp::AtmosAssetWriter> _atmos_asset_writer; static int const _info_size; }; diff --git a/src/lib/referenced_reel_asset.h b/src/lib/referenced_reel_asset.h index 0d66155b5..813d32148 100644 --- a/src/lib/referenced_reel_asset.h +++ b/src/lib/referenced_reel_asset.h @@ -26,13 +26,13 @@ class ReferencedReelAsset { public: - ReferencedReelAsset (boost::shared_ptr<dcp::ReelAsset> asset_, dcpomatic::DCPTimePeriod period_) + ReferencedReelAsset (std::shared_ptr<dcp::ReelAsset> asset_, dcpomatic::DCPTimePeriod period_) : asset (asset_) , period (period_) {} /** The asset */ - boost::shared_ptr<dcp::ReelAsset> asset; + std::shared_ptr<dcp::ReelAsset> asset; /** Period that this asset covers in the DCP */ dcpomatic::DCPTimePeriod period; }; diff --git a/src/lib/render_text.cc b/src/lib/render_text.cc index 93043ed06..3129c220f 100644 --- a/src/lib/render_text.cc +++ b/src/lib/render_text.cc @@ -48,7 +48,7 @@ using std::max; using std::pair; using std::cerr; using std::make_pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using boost::algorithm::replace_all; using namespace dcpomatic; diff --git a/src/lib/render_text.h b/src/lib/render_text.h index 7187ca30b..d1c8c7aee 100644 --- a/src/lib/render_text.h +++ b/src/lib/render_text.h @@ -29,5 +29,5 @@ namespace dcpomatic { std::string marked_up (std::list<StringText> subtitles, int target_height, float fade_factor); std::list<PositionImage> render_text ( - std::list<StringText>, std::list<boost::shared_ptr<dcpomatic::Font> > fonts, dcp::Size, dcpomatic::DCPTime, int + std::list<StringText>, std::list<std::shared_ptr<dcpomatic::Font> > fonts, dcp::Size, dcpomatic::DCPTime, int ); diff --git a/src/lib/resampler.cc b/src/lib/resampler.cc index 322c00c13..60eb7f505 100644 --- a/src/lib/resampler.cc +++ b/src/lib/resampler.cc @@ -33,7 +33,7 @@ using std::cout; using std::pair; using std::make_pair; using std::runtime_error; -using boost::shared_ptr; +using std::shared_ptr; /** @param in Input sampling rate (Hz) * @param out Output sampling rate (Hz) diff --git a/src/lib/resampler.h b/src/lib/resampler.h index 4b19dc511..1f8200c69 100644 --- a/src/lib/resampler.h +++ b/src/lib/resampler.h @@ -20,7 +20,6 @@ #include "types.h" #include <samplerate.h> -#include <boost/shared_ptr.hpp> #include <boost/utility.hpp> class AudioBuffers; @@ -31,8 +30,8 @@ public: Resampler (int, int, int); ~Resampler (); - boost::shared_ptr<const AudioBuffers> run (boost::shared_ptr<const AudioBuffers>); - boost::shared_ptr<const AudioBuffers> flush (); + std::shared_ptr<const AudioBuffers> run (std::shared_ptr<const AudioBuffers>); + std::shared_ptr<const AudioBuffers> flush (); void reset (); void set_fast (); diff --git a/src/lib/scp_uploader.cc b/src/lib/scp_uploader.cc index 9bb0f1e55..0926ffa9f 100644 --- a/src/lib/scp_uploader.cc +++ b/src/lib/scp_uploader.cc @@ -31,7 +31,7 @@ using std::string; using std::min; -using boost::shared_ptr; +using std::shared_ptr; using boost::function; SCPUploader::SCPUploader (function<void (string)> set_status, function<void (float)> set_progress) diff --git a/src/lib/screen.cc b/src/lib/screen.cc index 544bce9ef..dea513ab0 100644 --- a/src/lib/screen.cc +++ b/src/lib/screen.cc @@ -30,7 +30,7 @@ using std::string; using std::vector; using std::list; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/screen.h b/src/lib/screen.h index 013afff85..96b0ce764 100644 --- a/src/lib/screen.h +++ b/src/lib/screen.h @@ -54,7 +54,7 @@ public: void as_xml (xmlpp::Element *) const; std::vector<std::string> trusted_device_thumbprints () const; - boost::shared_ptr<Cinema> cinema; + std::shared_ptr<Cinema> cinema; std::vector<TrustedDevice> trusted_devices; }; @@ -62,9 +62,9 @@ public: KDMWithMetadataPtr kdm_for_screen ( - boost::shared_ptr<const Film> film, + std::shared_ptr<const Film> film, boost::filesystem::path cpl, - boost::shared_ptr<const dcpomatic::Screen> screen, + std::shared_ptr<const dcpomatic::Screen> screen, boost::posix_time::ptime valid_from, boost::posix_time::ptime valid_to, dcp::Formulation formulation, diff --git a/src/lib/send_kdm_email_job.cc b/src/lib/send_kdm_email_job.cc index 55a171811..cea35e3c5 100644 --- a/src/lib/send_kdm_email_job.cc +++ b/src/lib/send_kdm_email_job.cc @@ -28,7 +28,7 @@ using std::string; using std::list; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; SendKDMEmailJob::SendKDMEmailJob ( diff --git a/src/lib/send_notification_email_job.cc b/src/lib/send_notification_email_job.cc index 1c9d96338..41d215ba2 100644 --- a/src/lib/send_notification_email_job.cc +++ b/src/lib/send_notification_email_job.cc @@ -30,7 +30,7 @@ using std::string; using std::list; -using boost::shared_ptr; +using std::shared_ptr; /** @param body Email body */ SendNotificationEmailJob::SendNotificationEmailJob (string body) diff --git a/src/lib/send_problem_report_job.cc b/src/lib/send_problem_report_job.cc index d27609f0b..143baaa1b 100644 --- a/src/lib/send_problem_report_job.cc +++ b/src/lib/send_problem_report_job.cc @@ -34,7 +34,7 @@ using std::string; using std::list; -using boost::shared_ptr; +using std::shared_ptr; /** @param film Film thta the problem is with, or 0. * @param from Email address to use for From: diff --git a/src/lib/send_problem_report_job.h b/src/lib/send_problem_report_job.h index af1a4b269..4e66cb58b 100644 --- a/src/lib/send_problem_report_job.h +++ b/src/lib/send_problem_report_job.h @@ -26,7 +26,7 @@ class SendProblemReportJob : public Job { public: SendProblemReportJob ( - boost::shared_ptr<const Film> film, + std::shared_ptr<const Film> film, std::string from, std::string summary ); diff --git a/src/lib/server.cc b/src/lib/server.cc index 9a633c861..acb8d08d8 100644 --- a/src/lib/server.cc +++ b/src/lib/server.cc @@ -23,7 +23,7 @@ #include "i18n.h" -using boost::shared_ptr; +using std::shared_ptr; Server::Server (int port, int timeout) : _terminate (false) diff --git a/src/lib/server.h b/src/lib/server.h index 6ef268831..fbcd7e870 100644 --- a/src/lib/server.h +++ b/src/lib/server.h @@ -43,10 +43,10 @@ protected: bool _terminate; private: - virtual void handle (boost::shared_ptr<Socket> socket) = 0; + virtual void handle (std::shared_ptr<Socket> socket) = 0; void start_accept (); - void handle_accept (boost::shared_ptr<Socket>, boost::system::error_code const &); + void handle_accept (std::shared_ptr<Socket>, boost::system::error_code const &); boost::asio::io_service _io_service; boost::asio::ip::tcp::acceptor _acceptor; diff --git a/src/lib/shuffler.cc b/src/lib/shuffler.cc index d913f48ef..2689fb837 100644 --- a/src/lib/shuffler.cc +++ b/src/lib/shuffler.cc @@ -28,8 +28,8 @@ using std::make_pair; using std::string; -using boost::weak_ptr; -using boost::shared_ptr; +using std::weak_ptr; +using std::shared_ptr; using boost::optional; int const Shuffler::_max_size = 64; diff --git a/src/lib/shuffler.h b/src/lib/shuffler.h index 80754a5e0..b0a416b80 100644 --- a/src/lib/shuffler.h +++ b/src/lib/shuffler.h @@ -31,11 +31,11 @@ class Shuffler public: void clear (); void flush (); - void video (boost::weak_ptr<Piece>, ContentVideo video); + void video (std::weak_ptr<Piece>, ContentVideo video); - boost::signals2::signal<void (boost::weak_ptr<Piece>, ContentVideo)> Video; + boost::signals2::signal<void (std::weak_ptr<Piece>, ContentVideo)> Video; - typedef std::pair<boost::weak_ptr<Piece>, ContentVideo> Store; + typedef std::pair<std::weak_ptr<Piece>, ContentVideo> Store; private: friend struct ::shuffler_test5; diff --git a/src/lib/spl.cc b/src/lib/spl.cc index 7692df0ca..512fe253c 100644 --- a/src/lib/spl.cc +++ b/src/lib/spl.cc @@ -31,7 +31,7 @@ DCPOMATIC_ENABLE_WARNINGS using std::cout; using std::string; -using boost::shared_ptr; +using std::shared_ptr; using dcp::raw_convert; void diff --git a/src/lib/spl_entry.cc b/src/lib/spl_entry.cc index 3cb1a9a36..083ce0296 100644 --- a/src/lib/spl_entry.cc +++ b/src/lib/spl_entry.cc @@ -26,8 +26,8 @@ DCPOMATIC_DISABLE_WARNINGS #include <libxml++/libxml++.h> DCPOMATIC_ENABLE_WARNINGS -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; SPLEntry::SPLEntry (shared_ptr<Content> content) { diff --git a/src/lib/spl_entry.h b/src/lib/spl_entry.h index 740082eaf..2650371c4 100644 --- a/src/lib/spl_entry.h +++ b/src/lib/spl_entry.h @@ -23,7 +23,6 @@ #include <libcxml/cxml.h> #include <dcp/types.h> -#include <boost/shared_ptr.hpp> namespace xmlpp { class Element; @@ -34,11 +33,11 @@ class Content; class SPLEntry { public: - SPLEntry (boost::shared_ptr<Content> content); + SPLEntry (std::shared_ptr<Content> content); void as_xml (xmlpp::Element* e); - boost::shared_ptr<Content> content; + std::shared_ptr<Content> content; std::string name; /** Digest of this content */ std::string digest; @@ -48,7 +47,7 @@ public: bool encrypted; private: - void construct (boost::shared_ptr<Content> content); + void construct (std::shared_ptr<Content> content); }; #endif diff --git a/src/lib/stdout_log.cc b/src/lib/stdout_log.cc index ba4578770..f4942a7b4 100644 --- a/src/lib/stdout_log.cc +++ b/src/lib/stdout_log.cc @@ -24,7 +24,7 @@ using std::cout; using std::string; -using boost::shared_ptr; +using std::shared_ptr; StdoutLog::StdoutLog () { diff --git a/src/lib/stdout_log.h b/src/lib/stdout_log.h index ec3ba7e57..f4335e8e5 100644 --- a/src/lib/stdout_log.h +++ b/src/lib/stdout_log.h @@ -27,5 +27,5 @@ public: explicit StdoutLog (int types); private: - void do_log (boost::shared_ptr<const LogEntry> entry); + void do_log (std::shared_ptr<const LogEntry> entry); }; diff --git a/src/lib/string_text_file.cc b/src/lib/string_text_file.cc index 793619003..78c119df6 100644 --- a/src/lib/string_text_file.cc +++ b/src/lib/string_text_file.cc @@ -35,7 +35,7 @@ using std::vector; using std::cout; using std::string; -using boost::shared_ptr; +using std::shared_ptr; using boost::scoped_array; using boost::optional; using dcp::ArrayData; diff --git a/src/lib/string_text_file.h b/src/lib/string_text_file.h index 5ade4a9ec..c6fdac1e8 100644 --- a/src/lib/string_text_file.h +++ b/src/lib/string_text_file.h @@ -23,7 +23,6 @@ #include "dcpomatic_time.h" #include <sub/subtitle.h> -#include <boost/shared_ptr.hpp> #include <vector> class StringTextFileContent; @@ -41,7 +40,7 @@ class plain_text_parse_test; class StringTextFile { public: - explicit StringTextFile (boost::shared_ptr<const StringTextFileContent>); + explicit StringTextFile (std::shared_ptr<const StringTextFileContent>); boost::optional<dcpomatic::ContentTime> first () const; dcpomatic::ContentTime length () const; diff --git a/src/lib/string_text_file_content.cc b/src/lib/string_text_file_content.cc index 9a25ef06f..2bf416110 100644 --- a/src/lib/string_text_file_content.cc +++ b/src/lib/string_text_file_content.cc @@ -32,7 +32,7 @@ using std::string; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using dcp::raw_convert; using namespace dcpomatic; diff --git a/src/lib/string_text_file_content.h b/src/lib/string_text_file_content.h index 959190d32..cf71f8780 100644 --- a/src/lib/string_text_file_content.h +++ b/src/lib/string_text_file_content.h @@ -31,19 +31,19 @@ public: StringTextFileContent (boost::filesystem::path); StringTextFileContent (cxml::ConstNodePtr, int); - boost::shared_ptr<StringTextFileContent> shared_from_this () { - return boost::dynamic_pointer_cast<StringTextFileContent> (Content::shared_from_this ()); + std::shared_ptr<StringTextFileContent> shared_from_this () { + return std::dynamic_pointer_cast<StringTextFileContent> (Content::shared_from_this ()); } - boost::shared_ptr<const StringTextFileContent> shared_from_this () const { - return boost::dynamic_pointer_cast<const StringTextFileContent> (Content::shared_from_this ()); + std::shared_ptr<const StringTextFileContent> shared_from_this () const { + return std::dynamic_pointer_cast<const StringTextFileContent> (Content::shared_from_this ()); } - void examine (boost::shared_ptr<const Film> film, boost::shared_ptr<Job>); + void examine (std::shared_ptr<const Film> film, std::shared_ptr<Job>); std::string summary () const; std::string technical_summary () const; void as_xml (xmlpp::Node *, bool with_paths) const; - dcpomatic::DCPTime full_length (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime full_length (std::shared_ptr<const Film> film) const; dcpomatic::DCPTime approximate_length () const; std::string identifier () const; diff --git a/src/lib/string_text_file_decoder.cc b/src/lib/string_text_file_decoder.cc index 691734d7b..415851aef 100644 --- a/src/lib/string_text_file_decoder.cc +++ b/src/lib/string_text_file_decoder.cc @@ -31,9 +31,9 @@ using std::vector; using std::string; using std::cout; using std::max; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using namespace dcpomatic; StringTextFileDecoder::StringTextFileDecoder (shared_ptr<const Film> film, shared_ptr<const StringTextFileContent> content) diff --git a/src/lib/string_text_file_decoder.h b/src/lib/string_text_file_decoder.h index c57f40d24..aa8c80e6e 100644 --- a/src/lib/string_text_file_decoder.h +++ b/src/lib/string_text_file_decoder.h @@ -29,7 +29,7 @@ class StringTextFileContent; class StringTextFileDecoder : public Decoder, public StringTextFile { public: - StringTextFileDecoder (boost::shared_ptr<const Film> film, boost::shared_ptr<const StringTextFileContent>); + StringTextFileDecoder (std::shared_ptr<const Film> film, std::shared_ptr<const StringTextFileContent>); void seek (dcpomatic::ContentTime time, bool accurate); bool pass (); diff --git a/src/lib/subtitle_analysis.cc b/src/lib/subtitle_analysis.cc index 28eedac0d..49041151f 100644 --- a/src/lib/subtitle_analysis.cc +++ b/src/lib/subtitle_analysis.cc @@ -29,7 +29,7 @@ DCPOMATIC_ENABLE_WARNINGS using std::string; using dcp::raw_convert; -using boost::shared_ptr; +using std::shared_ptr; int const SubtitleAnalysis::_current_state_version = 1; diff --git a/src/lib/subtitle_encoder.cc b/src/lib/subtitle_encoder.cc index 473d0698b..1a83c5c67 100644 --- a/src/lib/subtitle_encoder.cc +++ b/src/lib/subtitle_encoder.cc @@ -26,7 +26,6 @@ #include <dcp/interop_subtitle_asset.h> #include <dcp/raw_convert.h> #include <dcp/smpte_subtitle_asset.h> -#include <boost/shared_ptr.hpp> #include <boost/filesystem.hpp> #include <boost/bind/bind.hpp> @@ -36,7 +35,7 @@ using std::string; using std::make_pair; using std::pair; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; diff --git a/src/lib/subtitle_encoder.h b/src/lib/subtitle_encoder.h index 70b924564..165d5fcb6 100644 --- a/src/lib/subtitle_encoder.h +++ b/src/lib/subtitle_encoder.h @@ -23,7 +23,6 @@ #include "dcp_text_track.h" #include "encoder.h" #include "dcpomatic_time.h" -#include <boost/weak_ptr.hpp> namespace dcp { class SubtitleAsset; @@ -37,7 +36,7 @@ class Film; class SubtitleEncoder : public Encoder { public: - SubtitleEncoder (boost::shared_ptr<const Film> film, boost::shared_ptr<Job> job, boost::filesystem::path output, std::string intial_name, bool split_reels, bool include_font); + SubtitleEncoder (std::shared_ptr<const Film> film, std::shared_ptr<Job> job, boost::filesystem::path output, std::string intial_name, bool split_reels, bool include_font); void go (); @@ -51,7 +50,7 @@ public: private: void text (PlayerText subs, TextType type, boost::optional<DCPTextTrack> track, dcpomatic::DCPTimePeriod period); - std::vector<std::pair<boost::shared_ptr<dcp::SubtitleAsset>, boost::filesystem::path> > _assets; + std::vector<std::pair<std::shared_ptr<dcp::SubtitleAsset>, boost::filesystem::path> > _assets; std::vector<dcpomatic::DCPTimePeriod> _reels; bool _split_reels; bool _include_font; diff --git a/src/lib/text_content.cc b/src/lib/text_content.cc index ecd28d1a0..656aec7eb 100644 --- a/src/lib/text_content.cc +++ b/src/lib/text_content.cc @@ -35,8 +35,8 @@ using std::string; using std::vector; using std::cout; using std::list; -using boost::shared_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::dynamic_pointer_cast; using boost::optional; using dcp::raw_convert; using namespace dcpomatic; diff --git a/src/lib/text_content.h b/src/lib/text_content.h index 1c7eef19a..21d09ad12 100644 --- a/src/lib/text_content.h +++ b/src/lib/text_content.h @@ -62,13 +62,13 @@ class TextContent : public ContentPart { public: TextContent (Content* parent, TextType type, TextType original_type); - TextContent (Content* parent, std::vector<boost::shared_ptr<Content> >); + TextContent (Content* parent, std::vector<std::shared_ptr<Content> >); void as_xml (xmlpp::Node *) const; std::string identifier () const; - void take_settings_from (boost::shared_ptr<const TextContent> c); + void take_settings_from (std::shared_ptr<const TextContent> c); - void add_font (boost::shared_ptr<dcpomatic::Font> font); + void add_font (std::shared_ptr<dcpomatic::Font> font); void set_use (bool); void set_burn (bool); @@ -122,7 +122,7 @@ public: return _y_scale; } - std::list<boost::shared_ptr<dcpomatic::Font> > fonts () const { + std::list<std::shared_ptr<dcpomatic::Font> > fonts () const { boost::mutex::scoped_lock lm (_mutex); return _fonts; } @@ -177,7 +177,7 @@ public: return _dcp_track; } - static std::list<boost::shared_ptr<TextContent> > from_xml (Content* parent, cxml::ConstNodePtr, int version); + static std::list<std::shared_ptr<TextContent> > from_xml (Content* parent, cxml::ConstNodePtr, int version); private: friend struct ffmpeg_pts_offset_test; @@ -202,7 +202,7 @@ private: double _x_scale; /** y scale factor to apply to subtitles */ double _y_scale; - std::list<boost::shared_ptr<dcpomatic::Font> > _fonts; + std::list<std::shared_ptr<dcpomatic::Font> > _fonts; boost::optional<dcp::Colour> _colour; boost::optional<dcp::Effect> _effect; boost::optional<dcp::Colour> _effect_colour; diff --git a/src/lib/text_decoder.cc b/src/lib/text_decoder.cc index 8146d33aa..3f6afd710 100644 --- a/src/lib/text_decoder.cc +++ b/src/lib/text_decoder.cc @@ -24,7 +24,6 @@ #include "log.h" #include "compose.hpp" #include <sub/subtitle.h> -#include <boost/shared_ptr.hpp> #include <boost/foreach.hpp> #include <boost/algorithm/string.hpp> #include <iostream> @@ -34,7 +33,7 @@ using std::cout; using std::string; using std::min; using std::max; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using boost::function; using namespace dcpomatic; diff --git a/src/lib/text_decoder.h b/src/lib/text_decoder.h index fba9b5947..3fb27b653 100644 --- a/src/lib/text_decoder.h +++ b/src/lib/text_decoder.h @@ -40,16 +40,16 @@ class TextDecoder : public DecoderPart public: TextDecoder ( Decoder* parent, - boost::shared_ptr<const TextContent>, + std::shared_ptr<const TextContent>, dcpomatic::ContentTime first ); - boost::optional<dcpomatic::ContentTime> position (boost::shared_ptr<const Film>) const { + boost::optional<dcpomatic::ContentTime> position (std::shared_ptr<const Film>) const { return _position; } - void emit_bitmap_start (dcpomatic::ContentTime from, boost::shared_ptr<Image> image, dcpomatic::Rect<double> rect); - void emit_bitmap (dcpomatic::ContentTimePeriod period, boost::shared_ptr<Image> image, dcpomatic::Rect<double> rect); + void emit_bitmap_start (dcpomatic::ContentTime from, std::shared_ptr<Image> image, dcpomatic::Rect<double> rect); + void emit_bitmap (dcpomatic::ContentTimePeriod period, std::shared_ptr<Image> image, dcpomatic::Rect<double> rect); void emit_plain_start (dcpomatic::ContentTime from, std::list<dcp::SubtitleString> s); void emit_plain_start (dcpomatic::ContentTime from, sub::Subtitle const & subtitle); void emit_plain (dcpomatic::ContentTimePeriod period, std::list<dcp::SubtitleString> s); @@ -58,7 +58,7 @@ public: void seek (); - boost::shared_ptr<const TextContent> content () const { + std::shared_ptr<const TextContent> content () const { return _content; } @@ -67,7 +67,7 @@ public: boost::signals2::signal<void (dcpomatic::ContentTime)> Stop; private: - boost::shared_ptr<const TextContent> _content; + std::shared_ptr<const TextContent> _content; boost::optional<dcpomatic::ContentTime> _position; }; diff --git a/src/lib/transcode_job.cc b/src/lib/transcode_job.cc index 6d73a3673..48a2c8114 100644 --- a/src/lib/transcode_job.cc +++ b/src/lib/transcode_job.cc @@ -42,9 +42,9 @@ using std::string; using std::fixed; using std::setprecision; using std::cout; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; /** @param film Film to use */ TranscodeJob::TranscodeJob (shared_ptr<const Film> film) diff --git a/src/lib/transcode_job.h b/src/lib/transcode_job.h index 8240977b9..88f41d655 100644 --- a/src/lib/transcode_job.h +++ b/src/lib/transcode_job.h @@ -23,7 +23,6 @@ */ #include "job.h" -#include <boost/shared_ptr.hpp> class Encoder; @@ -33,7 +32,7 @@ class Encoder; class TranscodeJob : public Job { public: - explicit TranscodeJob (boost::shared_ptr<const Film> film); + explicit TranscodeJob (std::shared_ptr<const Film> film); ~TranscodeJob (); std::string name () const; @@ -41,10 +40,10 @@ public: void run (); std::string status () const; - void set_encoder (boost::shared_ptr<Encoder> t); + void set_encoder (std::shared_ptr<Encoder> t); private: int remaining_time () const; - boost::shared_ptr<Encoder> _encoder; + std::shared_ptr<Encoder> _encoder; }; diff --git a/src/lib/types.cc b/src/lib/types.cc index 5687a5d48..6729628cd 100644 --- a/src/lib/types.cc +++ b/src/lib/types.cc @@ -39,7 +39,7 @@ using std::max; using std::min; using std::string; using std::list; -using boost::shared_ptr; +using std::shared_ptr; using dcp::raw_convert; bool operator== (Crop const & a, Crop const & b) diff --git a/src/lib/types.h b/src/lib/types.h index a10b26a63..87b3fc753 100644 --- a/src/lib/types.h +++ b/src/lib/types.h @@ -24,7 +24,6 @@ #include "position.h" #include "rect.h" #include <dcp/util.h> -#include <boost/shared_ptr.hpp> #include <vector> #include <stdint.h> @@ -86,8 +85,8 @@ namespace xmlpp { /** Port on which player listens for play requests */ #define PLAYER_PLAY_PORT (Config::instance()->server_port_base()+5) -typedef std::vector<boost::shared_ptr<Content> > ContentList; -typedef std::vector<boost::shared_ptr<FFmpegContent> > FFmpegContentList; +typedef std::vector<std::shared_ptr<Content> > ContentList; +typedef std::vector<std::shared_ptr<FFmpegContent> > FFmpegContentList; typedef int64_t Frame; @@ -190,7 +189,7 @@ 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) {} - explicit Crop (boost::shared_ptr<cxml::Node>); + explicit Crop (std::shared_ptr<cxml::Node>); /** Number of pixels to remove from the left-hand side */ int left; diff --git a/src/lib/upload_job.cc b/src/lib/upload_job.cc index c07e0c3d4..67a046251 100644 --- a/src/lib/upload_job.cc +++ b/src/lib/upload_job.cc @@ -36,7 +36,7 @@ using std::string; using std::min; -using boost::shared_ptr; +using std::shared_ptr; using boost::scoped_ptr; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; diff --git a/src/lib/upload_job.h b/src/lib/upload_job.h index 3a613fd72..ef9b6b451 100644 --- a/src/lib/upload_job.h +++ b/src/lib/upload_job.h @@ -27,7 +27,7 @@ class UploadJob : public Job { public: - explicit UploadJob (boost::shared_ptr<const Film>); + explicit UploadJob (std::shared_ptr<const Film>); ~UploadJob (); std::string name () const; diff --git a/src/lib/uploader.cc b/src/lib/uploader.cc index bfee5ecbb..9618e5beb 100644 --- a/src/lib/uploader.cc +++ b/src/lib/uploader.cc @@ -25,7 +25,7 @@ #include "i18n.h" using std::string; -using boost::shared_ptr; +using std::shared_ptr; using boost::function; Uploader::Uploader (function<void (string)> set_status, function<void (float)> set_progress) diff --git a/src/lib/uploader.h b/src/lib/uploader.h index 65dc9bf0d..f57ed8c4f 100644 --- a/src/lib/uploader.h +++ b/src/lib/uploader.h @@ -21,7 +21,6 @@ #ifndef DCPOMATIC_UPLOADER_H #define DCPOMATIC_UPLOADER_H -#include <boost/shared_ptr.hpp> #include <boost/filesystem.hpp> #include <boost/function.hpp> diff --git a/src/lib/upmixer_a.cc b/src/lib/upmixer_a.cc index fc92b081d..d8cfb4fff 100644 --- a/src/lib/upmixer_a.cc +++ b/src/lib/upmixer_a.cc @@ -27,7 +27,7 @@ using std::string; using std::min; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; UpmixerA::UpmixerA (int sampling_rate) : _left (0.02, 1900.0 / sampling_rate, 4800.0 / sampling_rate) diff --git a/src/lib/upmixer_a.h b/src/lib/upmixer_a.h index 18569dcfa..984b08095 100644 --- a/src/lib/upmixer_a.h +++ b/src/lib/upmixer_a.h @@ -36,8 +36,8 @@ public: std::string name () const; std::string id () const; int out_channels () const; - boost::shared_ptr<AudioProcessor> clone (int) const; - boost::shared_ptr<AudioBuffers> run (boost::shared_ptr<const AudioBuffers>, int channels); + std::shared_ptr<AudioProcessor> clone (int) const; + std::shared_ptr<AudioBuffers> run (std::shared_ptr<const AudioBuffers>, int channels); void flush (); void make_audio_mapping_default (AudioMapping& mapping) const; std::vector<NamedChannel> input_names () const; diff --git a/src/lib/upmixer_b.cc b/src/lib/upmixer_b.cc index dfc9d67d5..317108f41 100644 --- a/src/lib/upmixer_b.cc +++ b/src/lib/upmixer_b.cc @@ -27,7 +27,7 @@ using std::string; using std::min; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; UpmixerB::UpmixerB (int sampling_rate) : _lfe (0.01, 150.0 / sampling_rate) diff --git a/src/lib/upmixer_b.h b/src/lib/upmixer_b.h index 221be1615..c4c4fd1ac 100644 --- a/src/lib/upmixer_b.h +++ b/src/lib/upmixer_b.h @@ -34,8 +34,8 @@ public: std::string name () const; std::string id () const; int out_channels () const; - boost::shared_ptr<AudioProcessor> clone (int) const; - boost::shared_ptr<AudioBuffers> run (boost::shared_ptr<const AudioBuffers>, int channels); + std::shared_ptr<AudioProcessor> clone (int) const; + std::shared_ptr<AudioBuffers> run (std::shared_ptr<const AudioBuffers>, int channels); void flush (); void make_audio_mapping_default (AudioMapping& mapping) const; std::vector<NamedChannel> input_names () const; diff --git a/src/lib/util.cc b/src/lib/util.cc index 5310e55c9..45b517c7f 100644 --- a/src/lib/util.cc +++ b/src/lib/util.cc @@ -103,7 +103,7 @@ using std::cout; using std::bad_alloc; using std::set_terminate; using std::make_pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::thread; using boost::optional; using boost::lexical_cast; diff --git a/src/lib/util.h b/src/lib/util.h index e23eff07c..564e376ad 100644 --- a/src/lib/util.h +++ b/src/lib/util.h @@ -32,7 +32,6 @@ #include <dcp/decrypted_kdm.h> #include <dcp/util.h> #include <dcp/subtitle_image.h> -#include <boost/shared_ptr.hpp> #include <boost/optional.hpp> #include <boost/filesystem.hpp> #include <boost/date_time/gregorian/gregorian.hpp> @@ -105,19 +104,19 @@ extern int stride_round_up (int, int const *, int); extern void* wrapped_av_malloc (size_t); extern void set_backtrace_file (boost::filesystem::path); extern std::map<std::string, std::string> split_get_request (std::string url); -extern std::string video_asset_filename (boost::shared_ptr<dcp::PictureAsset> asset, int reel_index, int reel_count, boost::optional<std::string> content_summary); -extern std::string audio_asset_filename (boost::shared_ptr<dcp::SoundAsset> asset, int reel_index, int reel_count, boost::optional<std::string> content_summary); -extern std::string atmos_asset_filename (boost::shared_ptr<dcp::AtmosAsset> asset, int reel_index, int reel_count, boost::optional<std::string> content_summary); +extern std::string video_asset_filename (std::shared_ptr<dcp::PictureAsset> asset, int reel_index, int reel_count, boost::optional<std::string> content_summary); +extern std::string audio_asset_filename (std::shared_ptr<dcp::SoundAsset> asset, int reel_index, int reel_count, boost::optional<std::string> content_summary); +extern std::string atmos_asset_filename (std::shared_ptr<dcp::AtmosAsset> asset, int reel_index, int reel_count, boost::optional<std::string> content_summary); extern float relaxed_string_to_float (std::string); extern std::string careful_string_filter (std::string); extern std::pair<int, int> audio_channel_types (std::list<int> mapped, int channels); -extern boost::shared_ptr<AudioBuffers> remap (boost::shared_ptr<const AudioBuffers> input, int output_channels, AudioMapping map); +extern std::shared_ptr<AudioBuffers> remap (std::shared_ptr<const AudioBuffers> input, int output_channels, AudioMapping map); extern Eyes increment_eyes (Eyes e); extern void checked_fread (void* ptr, size_t size, FILE* stream, boost::filesystem::path path); extern void checked_fwrite (void const * ptr, size_t size, FILE* stream, boost::filesystem::path path); extern size_t utf8_strlen (std::string s); extern std::string day_of_week_to_string (boost::gregorian::greg_weekday d); -extern void emit_subtitle_image (dcpomatic::ContentTimePeriod period, dcp::SubtitleImage sub, dcp::Size size, boost::shared_ptr<TextDecoder> decoder); +extern void emit_subtitle_image (dcpomatic::ContentTimePeriod period, dcp::SubtitleImage sub, dcp::Size size, std::shared_ptr<TextDecoder> decoder); extern bool show_jobs_on_console (bool progress); extern void copy_in_bits (boost::filesystem::path from, boost::filesystem::path to, boost::function<void (float)>); extern dcp::Size scale_for_display (dcp::Size s, dcp::Size display_container, dcp::Size film_container); diff --git a/src/lib/verify_dcp_job.cc b/src/lib/verify_dcp_job.cc index f6dc10063..88e44c4f9 100644 --- a/src/lib/verify_dcp_job.cc +++ b/src/lib/verify_dcp_job.cc @@ -26,7 +26,7 @@ using std::string; using std::vector; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; diff --git a/src/lib/verify_dcp_job.h b/src/lib/verify_dcp_job.h index 2cff5ab6c..ab33b4f55 100644 --- a/src/lib/verify_dcp_job.h +++ b/src/lib/verify_dcp_job.h @@ -20,7 +20,6 @@ #include "job.h" #include <dcp/verify.h> -#include <boost/shared_ptr.hpp> class Content; diff --git a/src/lib/video_content.cc b/src/lib/video_content.cc index 631abc417..4933de71b 100644 --- a/src/lib/video_content.cc +++ b/src/lib/video_content.cc @@ -61,9 +61,9 @@ using std::fixed; using std::setprecision; using std::list; using std::pair; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; -using boost::dynamic_pointer_cast; +using std::dynamic_pointer_cast; using dcp::raw_convert; using namespace dcpomatic; diff --git a/src/lib/video_content.h b/src/lib/video_content.h index b478666bb..e5bbb5bab 100644 --- a/src/lib/video_content.h +++ b/src/lib/video_content.h @@ -27,8 +27,6 @@ #include "types.h" #include "content_part.h" #include <boost/thread/mutex.hpp> -#include <boost/weak_ptr.hpp> -#include <boost/enable_shared_from_this.hpp> class VideoExaminer; class Ratio; @@ -51,16 +49,16 @@ public: static int const CUSTOM_SIZE; }; -class VideoContent : public ContentPart, public boost::enable_shared_from_this<VideoContent> +class VideoContent : public ContentPart, public std::enable_shared_from_this<VideoContent> { public: explicit VideoContent (Content* parent); - VideoContent (Content* parent, std::vector<boost::shared_ptr<Content> >); + VideoContent (Content* parent, std::vector<std::shared_ptr<Content> >); void as_xml (xmlpp::Node *) const; std::string technical_summary () const; std::string identifier () const; - void take_settings_from (boost::shared_ptr<const VideoContent> c); + void take_settings_from (std::shared_ptr<const VideoContent> c); Frame length () const { boost::mutex::scoped_lock lm (_mutex); @@ -183,19 +181,19 @@ public: dcp::Size size_after_crop () const; dcp::Size scaled_size (dcp::Size container_size); - boost::optional<double> fade (boost::shared_ptr<const Film> film, Frame) const; + boost::optional<double> fade (std::shared_ptr<const Film> film, Frame) const; - std::string processing_description (boost::shared_ptr<const Film> film); + std::string processing_description (std::shared_ptr<const Film> film); void set_length (Frame); - void take_from_examiner (boost::shared_ptr<VideoExaminer>); + void take_from_examiner (std::shared_ptr<VideoExaminer>); void add_properties (std::list<UserProperty> &) const; - void modify_position (boost::shared_ptr<const Film> film, dcpomatic::DCPTime& pos) const; + void modify_position (std::shared_ptr<const Film> film, dcpomatic::DCPTime& pos) const; void modify_trim_start (dcpomatic::ContentTime& pos) const; - static boost::shared_ptr<VideoContent> from_xml (Content* parent, cxml::ConstNodePtr, int); + static std::shared_ptr<VideoContent> from_xml (Content* parent, cxml::ConstNodePtr, int); private: diff --git a/src/lib/video_decoder.cc b/src/lib/video_decoder.cc index 2850b5aa0..5bf067283 100644 --- a/src/lib/video_decoder.cc +++ b/src/lib/video_decoder.cc @@ -34,7 +34,7 @@ using std::cout; using std::list; using std::max; using std::back_inserter; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/video_decoder.h b/src/lib/video_decoder.h index dca8eef11..5d9a6b8a0 100644 --- a/src/lib/video_decoder.h +++ b/src/lib/video_decoder.h @@ -31,7 +31,6 @@ #include "content_video.h" #include "decoder_part.h" #include <boost/signals2.hpp> -#include <boost/shared_ptr.hpp> class VideoContent; class ImageProxy; @@ -45,24 +44,24 @@ class FrameIntervalChecker; class VideoDecoder : public DecoderPart { public: - VideoDecoder (Decoder* parent, boost::shared_ptr<const Content> c); + VideoDecoder (Decoder* parent, std::shared_ptr<const Content> c); friend struct video_decoder_fill_test1; friend struct video_decoder_fill_test2; friend struct ffmpeg_pts_offset_test; friend void ffmpeg_decoder_sequential_test_one (boost::filesystem::path file, float fps, int gaps, int video_length); - boost::optional<dcpomatic::ContentTime> position (boost::shared_ptr<const Film>) const { + boost::optional<dcpomatic::ContentTime> position (std::shared_ptr<const Film>) const { return _position; } void seek (); - void emit (boost::shared_ptr<const Film> film, boost::shared_ptr<const ImageProxy>, Frame frame); + void emit (std::shared_ptr<const Film> film, std::shared_ptr<const ImageProxy>, Frame frame); boost::signals2::signal<void (ContentVideo)> Data; private: - boost::shared_ptr<const Content> _content; + std::shared_ptr<const Content> _content; /** Frame of last thing to be emitted; only used for 3D */ boost::optional<Frame> _last_emitted_frame; boost::optional<Eyes> _last_emitted_eyes; diff --git a/src/lib/video_filter_graph.cc b/src/lib/video_filter_graph.cc index 9b297c87b..b35fc14c1 100644 --- a/src/lib/video_filter_graph.cc +++ b/src/lib/video_filter_graph.cc @@ -34,7 +34,7 @@ using std::pair; using std::vector; using std::string; using std::make_pair; -using boost::shared_ptr; +using std::shared_ptr; VideoFilterGraph::VideoFilterGraph (dcp::Size s, AVPixelFormat p, dcp::Fraction r) : _size (s) diff --git a/src/lib/video_filter_graph.h b/src/lib/video_filter_graph.h index 19cb24e36..ba0284fb8 100644 --- a/src/lib/video_filter_graph.h +++ b/src/lib/video_filter_graph.h @@ -26,7 +26,7 @@ public: VideoFilterGraph (dcp::Size s, AVPixelFormat p, dcp::Fraction r); bool can_process (dcp::Size s, AVPixelFormat p) const; - std::list<std::pair<boost::shared_ptr<Image>, int64_t> > process (AVFrame * frame); + std::list<std::pair<std::shared_ptr<Image>, int64_t> > process (AVFrame * frame); protected: std::string src_parameters () const; diff --git a/src/lib/video_mxf_content.cc b/src/lib/video_mxf_content.cc index 0c905a624..a8a301f22 100644 --- a/src/lib/video_mxf_content.cc +++ b/src/lib/video_mxf_content.cc @@ -34,7 +34,7 @@ using std::list; using std::string; -using boost::shared_ptr; +using std::shared_ptr; using namespace dcpomatic; VideoMXFContent::VideoMXFContent (boost::filesystem::path path) diff --git a/src/lib/video_mxf_content.h b/src/lib/video_mxf_content.h index dd470335c..6ec2c0e84 100644 --- a/src/lib/video_mxf_content.h +++ b/src/lib/video_mxf_content.h @@ -26,22 +26,22 @@ public: VideoMXFContent (boost::filesystem::path path); VideoMXFContent (cxml::ConstNodePtr node, int version); - boost::shared_ptr<VideoMXFContent> shared_from_this () { - return boost::dynamic_pointer_cast<VideoMXFContent> (Content::shared_from_this ()); + std::shared_ptr<VideoMXFContent> shared_from_this () { + return std::dynamic_pointer_cast<VideoMXFContent> (Content::shared_from_this ()); } - boost::shared_ptr<const VideoMXFContent> shared_from_this () const { - return boost::dynamic_pointer_cast<const VideoMXFContent> (Content::shared_from_this ()); + std::shared_ptr<const VideoMXFContent> shared_from_this () const { + return std::dynamic_pointer_cast<const VideoMXFContent> (Content::shared_from_this ()); } - void examine (boost::shared_ptr<const Film> film, boost::shared_ptr<Job> job); + void examine (std::shared_ptr<const Film> film, std::shared_ptr<Job> job); std::string summary () const; std::string technical_summary () const; std::string identifier () const; void as_xml (xmlpp::Node* node, bool with_paths) const; - dcpomatic::DCPTime full_length (boost::shared_ptr<const Film> film) const; + dcpomatic::DCPTime full_length (std::shared_ptr<const Film> film) const; dcpomatic::DCPTime approximate_length () const; - void add_properties (boost::shared_ptr<const Film> film, std::list<UserProperty>& p) const; + void add_properties (std::shared_ptr<const Film> film, std::list<UserProperty>& p) const; static bool valid_mxf (boost::filesystem::path path); }; diff --git a/src/lib/video_mxf_decoder.cc b/src/lib/video_mxf_decoder.cc index 488f83778..d2b057972 100644 --- a/src/lib/video_mxf_decoder.cc +++ b/src/lib/video_mxf_decoder.cc @@ -29,7 +29,7 @@ #include <dcp/stereo_picture_asset_reader.h> #include <dcp/exceptions.h> -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/video_mxf_decoder.h b/src/lib/video_mxf_decoder.h index 78313df0f..ae5d2fb78 100644 --- a/src/lib/video_mxf_decoder.h +++ b/src/lib/video_mxf_decoder.h @@ -28,18 +28,18 @@ class Log; class VideoMXFDecoder : public Decoder { public: - VideoMXFDecoder (boost::shared_ptr<const Film> film, boost::shared_ptr<const VideoMXFContent>); + VideoMXFDecoder (std::shared_ptr<const Film> film, std::shared_ptr<const VideoMXFContent>); bool pass (); void seek (dcpomatic::ContentTime t, bool accurate); private: - boost::shared_ptr<const VideoMXFContent> _content; + std::shared_ptr<const VideoMXFContent> _content; /** Time of next thing to return from pass */ dcpomatic::ContentTime _next; - boost::shared_ptr<dcp::MonoPictureAssetReader> _mono_reader; - boost::shared_ptr<dcp::StereoPictureAssetReader> _stereo_reader; + std::shared_ptr<dcp::MonoPictureAssetReader> _mono_reader; + std::shared_ptr<dcp::StereoPictureAssetReader> _stereo_reader; dcp::Size _size; }; diff --git a/src/lib/video_mxf_examiner.cc b/src/lib/video_mxf_examiner.cc index 652dc6941..8c7029ea8 100644 --- a/src/lib/video_mxf_examiner.cc +++ b/src/lib/video_mxf_examiner.cc @@ -24,7 +24,7 @@ #include <dcp/mono_picture_asset.h> #include <dcp/stereo_picture_asset.h> -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; VideoMXFExaminer::VideoMXFExaminer (shared_ptr<const VideoMXFContent> content) diff --git a/src/lib/video_mxf_examiner.h b/src/lib/video_mxf_examiner.h index ec2933c27..c66774876 100644 --- a/src/lib/video_mxf_examiner.h +++ b/src/lib/video_mxf_examiner.h @@ -29,7 +29,7 @@ namespace dcp { class VideoMXFExaminer : public VideoExaminer { public: - explicit VideoMXFExaminer (boost::shared_ptr<const VideoMXFContent>); + explicit VideoMXFExaminer (std::shared_ptr<const VideoMXFContent>); bool has_video () const { return true; @@ -44,5 +44,5 @@ public: } private: - boost::shared_ptr<dcp::PictureAsset> _asset; + std::shared_ptr<dcp::PictureAsset> _asset; }; diff --git a/src/lib/video_ring_buffers.cc b/src/lib/video_ring_buffers.cc index 24d904e7e..1c08d44b3 100644 --- a/src/lib/video_ring_buffers.cc +++ b/src/lib/video_ring_buffers.cc @@ -30,7 +30,7 @@ using std::make_pair; using std::cout; using std::pair; using std::string; -using boost::shared_ptr; +using std::shared_ptr; using boost::optional; using namespace dcpomatic; diff --git a/src/lib/video_ring_buffers.h b/src/lib/video_ring_buffers.h index c7f789cb5..832837d94 100644 --- a/src/lib/video_ring_buffers.h +++ b/src/lib/video_ring_buffers.h @@ -23,7 +23,6 @@ #include "types.h" #include <boost/noncopyable.hpp> #include <boost/thread/mutex.hpp> -#include <boost/shared_ptr.hpp> #include <utility> @@ -34,18 +33,18 @@ class PlayerVideo; class VideoRingBuffers : public boost::noncopyable { public: - void put (boost::shared_ptr<PlayerVideo> frame, dcpomatic::DCPTime time); - std::pair<boost::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> get (); + void put (std::shared_ptr<PlayerVideo> frame, dcpomatic::DCPTime time); + std::pair<std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> get (); void clear (); Frame size () const; bool empty () const; - void reset_metadata (boost::shared_ptr<const Film> film, dcp::Size player_video_container_size); + void reset_metadata (std::shared_ptr<const Film> film, dcp::Size player_video_container_size); std::pair<size_t, std::string> memory_used () const; private: mutable boost::mutex _mutex; - std::list<std::pair<boost::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> > _data; + std::list<std::pair<std::shared_ptr<PlayerVideo>, dcpomatic::DCPTime> > _data; }; diff --git a/src/lib/weak_film.h b/src/lib/weak_film.h index 731101474..7d090bd17 100644 --- a/src/lib/weak_film.h +++ b/src/lib/weak_film.h @@ -24,8 +24,6 @@ #include "dcpomatic_assert.h" -#include <boost/shared_ptr.hpp> -#include <boost/weak_ptr.hpp> class Film; @@ -35,15 +33,15 @@ template <class T> class WeakFilmTemplate { public: - WeakFilmTemplate (boost::weak_ptr<T> f) + WeakFilmTemplate (std::weak_ptr<T> f) : _film(f) {} protected: - boost::weak_ptr<T> _film; + std::weak_ptr<T> _film; - boost::shared_ptr<T> film () const { - boost::shared_ptr<T> f = _film.lock(); + std::shared_ptr<T> film () const { + std::shared_ptr<T> f = _film.lock(); DCPOMATIC_ASSERT (f); return f; } diff --git a/src/lib/writer.cc b/src/lib/writer.cc index 77a6bb589..ff2adeb00 100644 --- a/src/lib/writer.cc +++ b/src/lib/writer.cc @@ -59,9 +59,9 @@ using std::map; using std::min; using std::max; using std::vector; -using boost::shared_ptr; -using boost::weak_ptr; -using boost::dynamic_pointer_cast; +using std::shared_ptr; +using std::weak_ptr; +using std::dynamic_pointer_cast; using boost::optional; #if BOOST_VERSION >= 106100 using namespace boost::placeholders; diff --git a/src/lib/writer.h b/src/lib/writer.h index b924337dd..c8a007f78 100644 --- a/src/lib/writer.h +++ b/src/lib/writer.h @@ -29,8 +29,6 @@ #include "dcp_text_track.h" #include "weak_film.h" #include <dcp/atmos_frame.h> -#include <boost/shared_ptr.hpp> -#include <boost/weak_ptr.hpp> #include <boost/thread.hpp> #include <boost/thread/condition.hpp> #include <list> @@ -71,7 +69,7 @@ public: } type; /** encoded data for FULL */ - boost::shared_ptr<const dcp::Data> encoded; + std::shared_ptr<const dcp::Data> encoded; /** size of data for FAKE */ int size; /** reel index */ @@ -99,22 +97,22 @@ bool operator== (QueueItem const & a, QueueItem const & b); class Writer : public ExceptionStore, public boost::noncopyable, public WeakConstFilm { public: - Writer (boost::weak_ptr<const Film>, boost::weak_ptr<Job>, bool text_only = false); + Writer (std::weak_ptr<const Film>, std::weak_ptr<Job>, bool text_only = false); ~Writer (); void start (); bool can_fake_write (Frame) const; - void write (boost::shared_ptr<const dcp::Data>, Frame, Eyes); + void write (std::shared_ptr<const dcp::Data>, Frame, Eyes); void fake_write (Frame, Eyes); bool can_repeat (Frame) const; void repeat (Frame, Eyes); - void write (boost::shared_ptr<const AudioBuffers>, dcpomatic::DCPTime time); + void write (std::shared_ptr<const AudioBuffers>, dcpomatic::DCPTime time); void write (PlayerText text, TextType type, boost::optional<DCPTextTrack>, dcpomatic::DCPTimePeriod period); void write (std::vector<dcpomatic::FontData> fonts); void write (ReferencedReelAsset asset); - void write (boost::shared_ptr<const dcp::AtmosFrame> atmos, dcpomatic::DCPTime time, AtmosMetadata metadata); + void write (std::shared_ptr<const dcp::AtmosFrame> atmos, dcpomatic::DCPTime time, AtmosMetadata metadata); void finish (boost::filesystem::path output_dcp); void set_encoder_threads (int threads); @@ -128,7 +126,7 @@ private: void write_cover_sheet (boost::filesystem::path output_dcp); void calculate_referenced_digests (boost::function<void (float)> set_progress); - boost::weak_ptr<Job> _job; + std::weak_ptr<Job> _job; std::vector<ReelWriter> _reels; std::vector<ReelWriter>::iterator _audio_reel; std::vector<ReelWriter>::iterator _subtitle_reel; diff --git a/src/lib/zipper.cc b/src/lib/zipper.cc index d43b18ef0..005e15248 100644 --- a/src/lib/zipper.cc +++ b/src/lib/zipper.cc @@ -27,7 +27,7 @@ using std::string; using std::runtime_error; -using boost::shared_ptr; +using std::shared_ptr; Zipper::Zipper (boost::filesystem::path file) diff --git a/src/lib/zipper.h b/src/lib/zipper.h index a981a22b7..c2b40556c 100644 --- a/src/lib/zipper.h +++ b/src/lib/zipper.h @@ -20,7 +20,6 @@ #include <boost/noncopyable.hpp> #include <boost/filesystem.hpp> -#include <boost/shared_ptr.hpp> #include <vector> class Zipper : public boost::noncopyable @@ -34,6 +33,6 @@ public: private: struct zip* _zip; - std::vector<boost::shared_ptr<std::string> > _store; + std::vector<std::shared_ptr<std::string> > _store; }; |
