]> git.sesse.net Git - casparcg/commitdiff
* started using final keyword on classes where previously sealed or commented final
authorHelge Norberg <helge.norberg@svt.se>
Fri, 13 Feb 2015 16:49:27 +0000 (17:49 +0100)
committerHelge Norberg <helge.norberg@svt.se>
Fri, 13 Feb 2015 16:49:27 +0000 (17:49 +0100)
* removed some lambda workarounds no longer required.

26 files changed:
accelerator/cpu/image/image_mixer.h
accelerator/ogl/image/image_kernel.h
accelerator/ogl/image/image_mixer.h
accelerator/ogl/util/buffer.h
accelerator/ogl/util/device.h
accelerator/ogl/util/shader.h
accelerator/ogl/util/texture.h
common/array.h
common/executor.h
common/reactive.h
core/consumer/output.cpp
core/consumer/output.h
core/frame/draw_frame.h
core/frame/frame.h
core/frame/frame_transform.h
core/frame/pixel_format.h
core/mixer/audio/audio_mixer.h
core/mixer/mixer.h
core/producer/layer.h
core/producer/stage.cpp
core/producer/stage.h
core/video_channel.cpp
core/video_channel.h
core/video_format.h
protocol/amcp/AMCPCommandsImpl.cpp
shell/server.h

index bb3e649700d3cba88bef78985b7f9288b13dcbe3..dacb0817e8417c6961bb5d04c59950306100e4e2 100644 (file)
@@ -22,7 +22,7 @@ namespace caspar { namespace accelerator { namespace cpu {
        
 typedef std::vector<uint8_t, tbb::cache_aligned_allocator<uint8_t>> buffer;
 
-class image_mixer /* final */ : public core::image_mixer
+class image_mixer final : public core::image_mixer
 {
 public:
 
index 80136581d6d1b0a2781a39037ac91c9e3247c198..318c1a2d5724baa1fea86e878efd39b57541bc0c 100644 (file)
@@ -42,7 +42,7 @@ struct keyer_def
 };
 typedef enum_class<keyer_def> keyer;
 
-struct draw_params /* final */
+struct draw_params final
 {
        core::pixel_format_desc                                         pix_desc;
        std::vector<spl::shared_ptr<class texture>>     textures;
@@ -62,7 +62,7 @@ struct draw_params /* final */
        }
 };
 
-class image_kernel /* final */
+class image_kernel final
 {
        image_kernel(const image_kernel&);
        image_kernel& operator=(const image_kernel&);
index 9728ba9d70fe8c8d764082afa14265570f3fec03..be09940d63114da4c9388ed64890495201d888dc 100644 (file)
@@ -39,7 +39,7 @@ FORWARD2(caspar, core, struct frame_transform);
 
 namespace caspar { namespace accelerator { namespace ogl {
        
-class image_mixer /* final */ : public core::image_mixer
+class image_mixer final : public core::image_mixer
 {
        image_mixer(const image_mixer&);
        image_mixer& operator=(const image_mixer&);
index 2f6b7826dc47489317fb2ca7262e2549ed0070ae..cc1fbd73f646b69dc5354a179bf9ed2b41104eff 100644 (file)
@@ -28,7 +28,7 @@
 
 namespace caspar { namespace accelerator { namespace ogl {
                        
-class buffer /* final */
+class buffer final
 {
        buffer(const buffer&);
        buffer& operator=(const buffer&);
index b97f45be3b2eda15d81f5cf288304b1167b7a582..68bff80884f8e05fcdc56d6479b41b6d822ba063 100644 (file)
@@ -30,7 +30,7 @@ namespace caspar { namespace accelerator { namespace ogl {
 
 class texture;
 
-class device /* final */ : public std::enable_shared_from_this<device>
+class device final : public std::enable_shared_from_this<device>
 {      
        device(const device&);
        device& operator=(const device&);
index 20f1f4904f9e3ac31e451020ede5f7a79e2c2f3c..8af70914d4f725f39e929bfa65c14b2fac6cc3cc 100644 (file)
@@ -27,7 +27,7 @@
 
 namespace caspar { namespace accelerator { namespace ogl {
                
-class shader /* final */
+class shader final
 {
        shader(const shader&);
        shader& operator=(const shader&);
index 66405a34feb1bcdd1fee9d35c1eecd5e9e0103d0..93c9df3b9ec68020204a8a8566d76c9f33eb2e6f 100644 (file)
@@ -30,7 +30,7 @@ namespace caspar { namespace accelerator { namespace ogl {
 class buffer;
 class device;
 
-class texture /* final */
+class texture final
 {
        texture(const texture&);
        texture& operator=(const texture&);
index cd9ad300950dc3b62128c5c6db70caf2f148f923..8446e20b05d782b457ff6a2fb591b0b21a19e3d3 100644 (file)
@@ -13,7 +13,7 @@
 namespace caspar {
        
 template<typename T>
-class array /* final */
+class array final
 {
        array(const array<std::uint8_t>&);
        array& operator=(const array<std::uint8_t>&);
@@ -79,7 +79,7 @@ private:
 };
 
 template<typename T>
-class array<const T> /* final */
+class array<const T> final
 {
 public:
 
index ff69125d646bb86267ba483793176fee86dfc4fc..c2876caadfcaca43ffba9b0e1b745a8a6bebab88 100644 (file)
@@ -53,7 +53,7 @@ struct task_priority_def
 };
 typedef enum_class<task_priority_def> task_priority;
 
-class executor /* final */
+class executor final
 {      
        executor(const executor&);
        executor& operator=(const executor&);
index c4f6930335d740eb5113b73ae54a7a3cf6468974..1e99526c081a93f7b876477eaa324d7c1cbad59f 100644 (file)
@@ -181,7 +181,7 @@ private:
 };
 
 template<typename I, typename O = I>
-class basic_subject_impl /* final */ : public subject<I, O>
+class basic_subject_impl final : public subject<I, O>
 {      
     template <typename, typename> friend class basic_subject_impl;
 
index 915c4d11812f4e16d2b4d903873cebcad408365c..38fd8cf23a3ab4f26cdf3959e0bf45ff6ebb588c 100644 (file)
@@ -138,8 +138,8 @@ public:
                        return std::make_pair(0, 0);
                
                auto buffer_depths = ports_ | 
-                                                        boost::adaptors::map_values | // std::function is MSVC workaround
-                                                        boost::adaptors::transformed(std::function<int(const port&)>([](const port& p){return p.buffer_depth();})); 
+                                                        boost::adaptors::map_values |
+                                                        boost::adaptors::transformed([](const port& p){return p.buffer_depth();}); 
                
 
                return std::make_pair(*boost::range::min_element(buffer_depths), *boost::range::max_element(buffer_depths));
index 072c783c0fb26a8aebd6708c9e568bab44b8cb16..b6dc929ad2c53260d3a888486a1881148b3e2ed5 100644 (file)
@@ -34,7 +34,7 @@ FORWARD2(caspar, diagnostics, class graph);
 
 namespace caspar { namespace core {
        
-class output sealed
+class output final
 {
        output(const output&);
        output& operator=(const output&);
index af32f26a971d7c09b331c9641d62fb3356f49012..7fd67473cbbd4bb59b9f5055c8cd4038e675a6dd 100644 (file)
@@ -33,7 +33,7 @@ namespace caspar { namespace core {
        
 struct frame_transform;
 
-class draw_frame /* final */
+class draw_frame final
 {
 public:                
        // Static Members
index e6ade205ef05b33a9581f787fb0851fea585bd23..8fdcb8d071959cd0a7b85da9b1e30a2a9bc68f2f 100644 (file)
@@ -25,7 +25,7 @@ namespace caspar { namespace core {
 typedef std::vector<int32_t, tbb::cache_aligned_allocator<int32_t>> audio_buffer;
 class frame_geometry;
 
-class mutable_frame /* final */
+class mutable_frame final
 {
        mutable_frame(const mutable_frame&);
        mutable_frame& operator=(const mutable_frame&);
@@ -72,7 +72,7 @@ private:
        spl::unique_ptr<impl> impl_;
 };
 
-class const_frame /* final */
+class const_frame final
 {
 public:        
 
index 65c10e5bf3f5d3f52eaf09c71f41a0878dc05d67..65b9568495a52af3927300b0ff2de5aac1c26626 100644 (file)
@@ -28,7 +28,7 @@
 
 namespace caspar { namespace core {
                        
-struct levels /* final */
+struct levels final
 {
        levels() 
                : min_input(0.0)
@@ -45,7 +45,7 @@ struct levels /* final */
        double max_output;
 };
 
-struct image_transform /* final */
+struct image_transform final
 {
 public:
        image_transform();
@@ -74,7 +74,7 @@ public:
 bool operator==(const image_transform& lhs, const image_transform& rhs);
 bool operator!=(const image_transform& lhs, const image_transform& rhs);
 
-struct audio_transform /* final */
+struct audio_transform final
 {
 public:
        audio_transform();
@@ -92,7 +92,7 @@ bool operator==(const audio_transform& lhs, const audio_transform& rhs);
 bool operator!=(const audio_transform& lhs, const audio_transform& rhs);
 
 //__declspec(align(16)) 
-struct frame_transform /* final */
+struct frame_transform final
 {
 public:
        frame_transform();
index d98c8ba02486bb710aaaa155981883cb1eaa4748..09f2bc61e6de02bab940298053641568a03cd3ed 100644 (file)
@@ -50,7 +50,7 @@ struct pixel_format_def
 };
 typedef enum_class<pixel_format_def> pixel_format;
 
-struct pixel_format_desc /* final */
+struct pixel_format_desc final
 {
        struct plane
        {
index 85dab7944d150ddfb57e37a26f8da9eb9ce3079e..96b385ff85c035540f7d3578a0920cb7d94c73c5 100644 (file)
@@ -37,7 +37,7 @@ namespace caspar { namespace core {
                
 typedef std::vector<int32_t, tbb::cache_aligned_allocator<int32_t>> audio_buffer;
 
-class audio_mixer /* final */ : public frame_visitor
+class audio_mixer final : public frame_visitor
 {
        audio_mixer(const audio_mixer&);
        audio_mixer& operator=(const audio_mixer&);
index 6b1147a3c0c619d515d98d6b10604e01bfa62cdc..161e4d3b5fe6367c6116f0a1e8343648bf6cdcec 100644 (file)
@@ -38,7 +38,7 @@ FORWARD2(caspar, diagnostics, class graph);
 
 namespace caspar { namespace core {
        
-class mixer /* final */
+class mixer final
 {
        mixer(const mixer&);
        mixer& operator=(const mixer&);
index c2d6a6997b6bc7a16f5046f98ae36ef9238b665a..ee5a722449fc3c935f6e6232add83998c9d5cce3 100644 (file)
@@ -38,7 +38,7 @@ FORWARD1(boost, template<typename T> class optional);
 
 namespace caspar { namespace core {
        
-class layer /*final*/ : public interaction_sink
+class layer final : public interaction_sink
 {
        layer(const layer&);
        layer& operator=(const layer&);
index dc7af671ef1e0bf5291751e8331e5356a7fdae47..e619eb3c0bf9915a786f4b1816875edce938bb8c 100644 (file)
@@ -88,7 +88,6 @@ public:
 
                                aggregator_.translate_and_send();
 
-                               // WORKAROUND: Compiler doesn't seem to like lambda.
                                tbb::parallel_for_each(indices.begin(), indices.end(), [&](int index)
                                {
                                        draw(index, format_desc, frames);
index 997c6b8d5781f015fd9010ccbc14fdf5d43df429..210d00a91f8b3b0afa3694219ca40b0ea898c0ea 100644 (file)
@@ -45,7 +45,7 @@ namespace caspar { namespace core {
 
 //typedef reactive::observable<std::map<int, class draw_frame>> frame_observable;
        
-class stage /* final */ : public interaction_sink
+class stage final : public interaction_sink
 {
        stage(const stage&);
        stage& operator=(const stage&);
index bb2dfe6cfbd67aaa38a8d07b77da532fa6049b23..0deabf3cefea0211cf6cd681bc896b24130aaaaa 100644 (file)
@@ -47,7 +47,7 @@
 
 namespace caspar { namespace core {
 
-struct video_channel::impl /* final */
+struct video_channel::impl final
 {
        spl::shared_ptr<monitor::subject>                               monitor_subject_;
 
index a0bd94eb17995871349ced82393b8a3d8c29cdf1..c8dc1f090e20bbef0a62e660f56ddbfc702ec00d 100644 (file)
@@ -39,7 +39,7 @@ FORWARD2(caspar, core, class frame_factory);
 
 namespace caspar { namespace core {
        
-class video_channel /*final*/
+class video_channel final
 {
        video_channel(const video_channel&);
        video_channel& operator=(const video_channel&);
index 260afbed6e015a3c792301fc12d25cc106cfe6eb..326db5025d4bb50bde0aa384155ba2e5049e6c10 100644 (file)
@@ -82,7 +82,7 @@ struct field_mode_def
 };
 typedef enum_class<field_mode_def> field_mode;
 
-struct video_format_desc /* final */
+struct video_format_desc final
 {
        video_format            format;         
 
index 0471489320347961daf05a4164f31bca08571854..5f5d4fcb3c062d802af9b731f79087688afa973c 100644 (file)
@@ -165,11 +165,9 @@ std::wstring read_latin1_file(const boost::filesystem::wpath& file)
        std::wstring widened_result;
 
        // The first 255 codepoints in unicode is the same as in latin1
-       auto from_signed_to_signed = std::function<unsigned char(char)>(
-               [] (char c) { return static_cast<unsigned char>(c); }
-       );
        boost::copy(
-               result | boost::adaptors::transformed(from_signed_to_signed),
+               result | boost::adaptors::transformed(
+                               [](char c) { return static_cast<unsigned char>(c); }),
                std::back_inserter(widened_result));
 
        return widened_result;
index d579b5008f71dc9aa7f666af21badc24788436ee..aa6b993402df5b4edde44af11bbf89237d3e455d 100644 (file)
@@ -37,7 +37,7 @@ namespace core {
        class thumbnail_generator;
 }
 
-class server /* final */ : public boost::noncopyable
+class server final : public boost::noncopyable
 {
 public:
        explicit server(std::promise<bool>& shutdown_server_now);