1 /* 2 * Copyright 2016 Haiku, Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _MEDIA_IO_H 6 #define _MEDIA_IO_H 7 8 9 #include <DataIO.h> 10 #include <SupportDefs.h> 11 12 13 enum media_io_flags { 14 B_MEDIA_STREAMING = 0x00000001, 15 16 B_MEDIA_MUTABLE_SIZE = 0x00000002, 17 18 B_MEDIA_SEEK_FORWARD = 0x00000004, 19 B_MEDIA_SEEK_BACKWARD = 0x00000008, 20 B_MEDIA_SEEKABLE = B_MEDIA_SEEK_BACKWARD | B_MEDIA_SEEK_FORWARD 21 }; 22 23 24 class BMediaIO : public BPositionIO { 25 public: 26 BMediaIO(); 27 virtual ~BMediaIO(); 28 29 virtual void GetFlags(int32* flags) const = 0; 30 31 private: 32 BMediaIO(const BMediaIO&); 33 BMediaIO& operator=(const BMediaIO&); 34 35 virtual void _ReservedMediaIO1(); 36 virtual void _ReservedMediaIO2(); 37 virtual void _ReservedMediaIO3(); 38 virtual void _ReservedMediaIO4(); 39 virtual void _ReservedMediaIO5(); 40 41 uint32 _reserved[5]; 42 }; 43 44 #endif // _MEDIA_IO_H 45