1 /* 2 * Copyright 2001-2008 Ingo Weinhold <ingo_weinhold@gmx.de> 3 * Copyright 2001-2008 Stephan Aßmus <superstippi@gmx.de> 4 * All rights reserved. Distributed under the terms of the MIT licensce. 5 */ 6 #ifndef VIDEO_SUPPLIER_H 7 #define VIDEO_SUPPLIER_H 8 9 10 #include <SupportDefs.h> 11 12 13 struct media_format; 14 15 16 class VideoSupplier { 17 public: 18 VideoSupplier(); 19 virtual ~VideoSupplier(); 20 21 virtual status_t FillBuffer(int64 startFrame, void* buffer, 22 const media_format* format, 23 bool& wasCached) = 0; 24 25 virtual void DeleteCaches(); 26 27 inline bigtime_t ProcessingLatency() const 28 { return fProcessingLatency; } 29 30 protected: 31 bigtime_t fProcessingLatency; 32 }; 33 34 #endif // VIDEO_SUPPLIER_H 35