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 13enum 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 24class BMediaIO : public BPositionIO { 25public: 26 BMediaIO(); 27 virtual ~BMediaIO(); 28 29 virtual void GetFlags(int32* flags) const = 0; 30 31private: 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