summaryrefslogtreecommitdiffstats
path: root/include/media/stagefright/CachingDataSource.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/media/stagefright/CachingDataSource.h')
-rw-r--r--include/media/stagefright/CachingDataSource.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/include/media/stagefright/CachingDataSource.h b/include/media/stagefright/CachingDataSource.h
index e275cb4..e35e19e 100644
--- a/include/media/stagefright/CachingDataSource.h
+++ b/include/media/stagefright/CachingDataSource.h
@@ -26,14 +26,16 @@ namespace android {
class CachingDataSource : public DataSource {
public:
- // Assumes ownership of "source".
- CachingDataSource(DataSource *source, size_t pageSize, int numPages);
- virtual ~CachingDataSource();
+ CachingDataSource(
+ const sp<DataSource> &source, size_t pageSize, int numPages);
status_t InitCheck() const;
virtual ssize_t read_at(off_t offset, void *data, size_t size);
+protected:
+ virtual ~CachingDataSource();
+
private:
struct Page {
Page *mPrev, *mNext;
@@ -42,7 +44,7 @@ private:
void *mData;
};
- DataSource *mSource;
+ sp<DataSource> mSource;
void *mData;
size_t mPageSize;
Page *mFirst, *mLast;