]> git.sesse.net Git - casparcg/blobdiff - core/frame.h
set svn:eol-style native on .h and .cpp files
[casparcg] / core / frame.h
index abd52fa4910d37755ec15a82d526c72a5ca1a4aa..45d6bfdea19374942c6035fc630b60984d63adc5 100644 (file)
@@ -1,86 +1,86 @@
-#pragma once\r
-\r
-#include <boost/noncopyable.hpp>\r
-#include <boost/range.hpp>\r
-\r
-#include <stdint.h>\r
-\r
-#include "frame/pixel_format.h"\r
-#include "video_format.h"\r
-\r
-namespace caspar { namespace core {\r
-\r
-struct data_frame : boost::noncopyable\r
-{\r
-       virtual ~frame()\r
-       {\r
-       }\r
-\r
-       virtual const struct  pixel_format_desc& get_pixel_format_desc() const = 0;\r
-\r
-       virtual const boost::iterator_range<const uint8_t*> image_data() const = 0;\r
-       virtual const boost::iterator_range<const int32_t*> audio_data() const = 0;\r
-       \r
-       virtual const boost::iterator_range<uint8_t*> image_data() = 0;\r
-       virtual const boost::iterator_range<int32_t*> audio_data() = 0;\r
-\r
-       virtual double get_frame_rate() const = 0;\r
-       virtual field_mode get_field_mode() const = 0;\r
-\r
-       virtual int width() const = 0;\r
-       virtual int height() const = 0;\r
-\r
-       static safe_ptr<frame> empty()\r
-       {\r
-               struct empty_frame : public frame\r
-               {\r
-                       virtual const struct  video_format_desc& get_video_format_desc() const\r
-                       {\r
-                               static video_format_desc invalid;\r
-                               return invalid;\r
-                       }\r
-                       virtual const struct  pixel_format_desc& get_pixel_format_desc() const \r
-                       {\r
-                               static pixel_format_desc invalid;\r
-                               return invalid;\r
-                       }\r
-                       virtual const boost::iterator_range<const uint8_t*> image_data() const \r
-                       {\r
-                               return boost::iterator_range<const uint8_t*>();\r
-                       }\r
-                       virtual const boost::iterator_range<const int32_t*> audio_data() const \r
-                       {\r
-                               return boost::iterator_range<const int32_t*>();\r
-                       }\r
-                       const boost::iterator_range<uint8_t*> image_data()\r
-                       {\r
-                               return boost::iterator_range<uint8_t*>();\r
-                       }\r
-                       const boost::iterator_range<int32_t*> audio_data()\r
-                       {\r
-                               return boost::iterator_range<int32_t*>();\r
-                       }\r
-                       virtual double get_frame_rate() const\r
-                       {\r
-                               return 0.0;\r
-                       }\r
-                       virtual field_mode get_field_mode() const\r
-                       {\r
-                               return field_mode::empty;\r
-                       }\r
-                       virtual int width() const\r
-                       {\r
-                               return 0;\r
-                       }\r
-                       virtual int height() const\r
-                       {\r
-                               return 0;\r
-                       }\r
-               };\r
-\r
-               static safe_ptr<empty_frame> empty;\r
-               return empty;\r
-       }\r
-};\r
-\r
+#pragma once
+
+#include <boost/noncopyable.hpp>
+#include <boost/range.hpp>
+
+#include <stdint.h>
+
+#include "frame/pixel_format.h"
+#include "video_format.h"
+
+namespace caspar { namespace core {
+
+struct data_frame : boost::noncopyable
+{
+       virtual ~frame()
+       {
+       }
+
+       virtual const struct  pixel_format_desc& get_pixel_format_desc() const = 0;
+
+       virtual const boost::iterator_range<const uint8_t*> image_data() const = 0;
+       virtual const boost::iterator_range<const int32_t*> audio_data() const = 0;
+       
+       virtual const boost::iterator_range<uint8_t*> image_data() = 0;
+       virtual const boost::iterator_range<int32_t*> audio_data() = 0;
+
+       virtual double get_frame_rate() const = 0;
+       virtual field_mode get_field_mode() const = 0;
+
+       virtual int width() const = 0;
+       virtual int height() const = 0;
+
+       static safe_ptr<frame> empty()
+       {
+               struct empty_frame : public frame
+               {
+                       virtual const struct  video_format_desc& get_video_format_desc() const
+                       {
+                               static video_format_desc invalid;
+                               return invalid;
+                       }
+                       virtual const struct  pixel_format_desc& get_pixel_format_desc() const 
+                       {
+                               static pixel_format_desc invalid;
+                               return invalid;
+                       }
+                       virtual const boost::iterator_range<const uint8_t*> image_data() const 
+                       {
+                               return boost::iterator_range<const uint8_t*>();
+                       }
+                       virtual const boost::iterator_range<const int32_t*> audio_data() const 
+                       {
+                               return boost::iterator_range<const int32_t*>();
+                       }
+                       const boost::iterator_range<uint8_t*> image_data()
+                       {
+                               return boost::iterator_range<uint8_t*>();
+                       }
+                       const boost::iterator_range<int32_t*> audio_data()
+                       {
+                               return boost::iterator_range<int32_t*>();
+                       }
+                       virtual double get_frame_rate() const
+                       {
+                               return 0.0;
+                       }
+                       virtual field_mode get_field_mode() const
+                       {
+                               return field_mode::empty;
+                       }
+                       virtual int width() const
+                       {
+                               return 0;
+                       }
+                       virtual int height() const
+                       {
+                               return 0;
+                       }
+               };
+
+               static safe_ptr<empty_frame> empty;
+               return empty;
+       }
+};
+
 }}
\ No newline at end of file