Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ADDON::CVFSEntry Class Reference

A virtual filesystem entry add-on. More...

#include <VFSEntry.h>

Inheritance diagram for ADDON::CVFSEntry:
ADDON::IAddonInstanceHandler

Classes

struct  ProtocolInfo
 A structure encapsulating properties of supplied protocol. More...
 

Public Member Functions

 CVFSEntry (const AddonInfoPtr &addonInfo)
 Construct from add-on properties.
 
 ~CVFSEntry () override
 
voidOpen (const CURL &url)
 
voidOpenForWrite (const CURL &url, bool bOverWrite)
 
bool Exists (const CURL &url) const
 
int Stat (const CURL &url, struct __stat64 *buffer) const
 
ssize_t Read (void *ctx, void *lpBuf, size_t uiBufSize) const
 
ssize_t Write (void *ctx, const void *lpBuf, size_t uiBufSize) const
 
int64_t Seek (void *ctx, int64_t iFilePosition, int iWhence=SEEK_SET) const
 
int Truncate (void *ctx, int64_t size) const
 
void Close (void *ctx) const
 
int64_t GetPosition (void *ctx) const
 
int64_t GetLength (void *ctx) const
 
int GetChunkSize (void *ctx) const
 
int IoControl (void *ctx, XFILE::IOControl request, void *param) const
 
bool Delete (const CURL &url) const
 
bool Rename (const CURL &url, const CURL &url2) const
 
bool GetDirectory (const CURL &url, CFileItemList &items, void *ctx) const
 
bool DirectoryExists (const CURL &url) const
 
bool RemoveDirectory (const CURL &url) const
 
bool CreateDirectory (const CURL &url) const
 
void ClearOutIdle () const
 
void DisconnectAll () const
 
bool ContainsFiles (const CURL &url, CFileItemList &items) const
 
const std::string & GetProtocols () const
 
const std::string & GetExtensions () const
 
bool HasFiles () const
 
bool HasDirectories () const
 
bool HasFileDirectories () const
 
const std::string & GetZeroconfType () const
 
const ProtocolInfoGetProtocolInfo () const
 
- Public Member Functions inherited from ADDON::IAddonInstanceHandler
 IAddonInstanceHandler (ADDON_TYPE type, const AddonInfoPtr &addonInfo, AddonInstanceId instanceId=ADDON_INSTANCE_ID_UNUSED, KODI_HANDLE parentInstance=nullptr, const std::string &uniqueWorkID="")
 Class constructor for handling add-on instance processes, allowing an add-on to handle multiple work simultaneously and independently.
 
virtual ~IAddonInstanceHandler ()
 
ADDON_TYPE UsedType () const
 
AddonInstanceId InstanceId () const
 
const std::string & UniqueWorkID () const
 
std::string ID () const
 
AddonInstanceId InstanceID () const
 
std::string Name () const
 
std::string Author () const
 
std::string Icon () const
 
std::string Path () const
 
std::string Profile () const
 
CAddonVersion Version () const
 
ADDON_STATUS CreateInstance ()
 
void DestroyInstance ()
 
const std::shared_ptr< CAddonDll > & Addon () const
 
AddonInfoPtr GetAddonInfo () const
 
virtual void OnPreInstall ()
 
virtual void OnPostInstall (bool update, bool modal)
 
virtual void OnPreUnInstall ()
 
virtual void OnPostUnInstall ()
 

Additional Inherited Members

- Protected Attributes inherited from ADDON::IAddonInstanceHandler
KODI_ADDON_INSTANCE_STRUCT m_ifc {}
 

Detailed Description

A virtual filesystem entry add-on.

Constructor & Destructor Documentation

◆ CVFSEntry()

ADDON::CVFSEntry::CVFSEntry ( const AddonInfoPtr & addonInfo)
explicit

Construct from add-on properties.

Parameters
addonInfoGeneral addon properties

◆ ~CVFSEntry()

ADDON::CVFSEntry::~CVFSEntry ( )
override

Member Function Documentation

◆ ClearOutIdle()

void ADDON::CVFSEntry::ClearOutIdle ( ) const

◆ Close()

void ADDON::CVFSEntry::Close ( void * ctx) const

◆ ContainsFiles()

bool ADDON::CVFSEntry::ContainsFiles ( const CURL & url,
CFileItemList & items ) const

◆ CreateDirectory()

bool ADDON::CVFSEntry::CreateDirectory ( const CURL & url) const

◆ Delete()

bool ADDON::CVFSEntry::Delete ( const CURL & url) const

◆ DirectoryExists()

bool ADDON::CVFSEntry::DirectoryExists ( const CURL & url) const

◆ DisconnectAll()

void ADDON::CVFSEntry::DisconnectAll ( ) const

◆ Exists()

bool ADDON::CVFSEntry::Exists ( const CURL & url) const

◆ GetChunkSize()

int ADDON::CVFSEntry::GetChunkSize ( void * ctx) const

◆ GetDirectory()

bool ADDON::CVFSEntry::GetDirectory ( const CURL & url,
CFileItemList & items,
void * ctx ) const

◆ GetExtensions()

const std::string & ADDON::CVFSEntry::GetExtensions ( ) const
inline

◆ GetLength()

int64_t ADDON::CVFSEntry::GetLength ( void * ctx) const

◆ GetPosition()

int64_t ADDON::CVFSEntry::GetPosition ( void * ctx) const

◆ GetProtocolInfo()

const ProtocolInfo & ADDON::CVFSEntry::GetProtocolInfo ( ) const
inline

◆ GetProtocols()

const std::string & ADDON::CVFSEntry::GetProtocols ( ) const
inline

◆ GetZeroconfType()

const std::string & ADDON::CVFSEntry::GetZeroconfType ( ) const
inline

◆ HasDirectories()

bool ADDON::CVFSEntry::HasDirectories ( ) const
inline

◆ HasFileDirectories()

bool ADDON::CVFSEntry::HasFileDirectories ( ) const
inline

◆ HasFiles()

bool ADDON::CVFSEntry::HasFiles ( ) const
inline

◆ IoControl()

int ADDON::CVFSEntry::IoControl ( void * ctx,
XFILE::IOControl request,
void * param ) const

◆ Open()

void * ADDON::CVFSEntry::Open ( const CURL & url)

◆ OpenForWrite()

void * ADDON::CVFSEntry::OpenForWrite ( const CURL & url,
bool bOverWrite )

◆ Read()

ssize_t ADDON::CVFSEntry::Read ( void * ctx,
void * lpBuf,
size_t uiBufSize ) const

◆ RemoveDirectory()

bool ADDON::CVFSEntry::RemoveDirectory ( const CURL & url) const

◆ Rename()

bool ADDON::CVFSEntry::Rename ( const CURL & url,
const CURL & url2 ) const

◆ Seek()

int64_t ADDON::CVFSEntry::Seek ( void * ctx,
int64_t iFilePosition,
int iWhence = SEEK_SET ) const

◆ Stat()

int ADDON::CVFSEntry::Stat ( const CURL & url,
struct __stat64 * buffer ) const

◆ Truncate()

int ADDON::CVFSEntry::Truncate ( void * ctx,
int64_t size ) const

◆ Write()

ssize_t ADDON::CVFSEntry::Write ( void * ctx,
const void * lpBuf,
size_t uiBufSize ) const

The documentation for this class was generated from the following files: