xbmc
DVDInputStreamFile.h
1 /*
2  * Copyright (C) 2005-2018 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "DVDInputStream.h"
12 
14 {
15 public:
16  explicit CDVDInputStreamFile(const CFileItem& fileitem, unsigned int flags);
17  ~CDVDInputStreamFile() override;
18  bool Open() override;
19  void Close() override;
20  int Read(uint8_t* buf, int buf_size) override;
21  int64_t Seek(int64_t offset, int whence) override;
22  bool IsEOF() override;
23  int64_t GetLength() override;
24  BitstreamStats GetBitstreamStats() const override ;
25  int GetBlockSize() override;
26  void SetReadRate(uint32_t rate) override;
27  bool GetCacheStatus(XFILE::SCacheStatus *status) override;
28 
29 protected:
30  XFILE::CFile* m_pFile = nullptr;
31  bool m_eof = false;
32  unsigned int m_flags = 0;
33 };
Definition: DVDInputStream.h:50
bool GetCacheStatus(XFILE::SCacheStatus *status) override
Get the cache status.
Definition: DVDInputStreamFile.cpp:126
Definition: File.h:37
Definition: BitstreamStats.h:13
Definition: IFileTypes.h:49
Definition: DVDInputStreamFile.h:13
void SetReadRate(uint32_t rate) override
Indicate expected read rate in bytes per second. This could be used to throttle caching rate...
Definition: DVDInputStreamFile.cpp:156
Represents a file on a share.
Definition: FileItem.h:102