Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
No Matches
ADDON::CVFSEntry Class Reference

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

#include <VFSEntry.h>

Inheritance diagram for ADDON::CVFSEntry:


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)
int Stat (const CURL &url, struct __stat64 *buffer)
ssize_t Read (void *ctx, void *lpBuf, size_t uiBufSize)
ssize_t Write (void *ctx, const void *lpBuf, size_t uiBufSize)
int64_t Seek (void *ctx, int64_t iFilePosition, int iWhence=SEEK_SET)
int Truncate (void *ctx, int64_t size)
void Close (void *ctx)
int64_t GetPosition (void *ctx)
int64_t GetLength (void *ctx)
int GetChunkSize (void *ctx)
int IoControl (void *ctx, XFILE::EIoControl request, void *param)
bool Delete (const CURL &url)
bool Rename (const CURL &url, const CURL &url2)
bool GetDirectory (const CURL &url, CFileItemList &items, void *ctx)
bool DirectoryExists (const CURL &url)
bool RemoveDirectory (const CURL &url)
bool CreateDirectory (const CURL &url)
void ClearOutIdle ()
void DisconnectAll ()
bool ContainsFiles (const CURL &url, CFileItemList &items)
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 ()
std::string ID () 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 AddonDllPtrAddon () const
AddonInfoPtr GetAddonInfo () const
virtual void OnPreInstall ()
virtual void OnPostInstall (bool update, bool modal)
virtual void OnPreUnInstall ()
virtual void OnPostUnInstall ()

Protected Attributes

std::string m_protocols
 Protocols for VFS entry.
std::string m_extensions
 Extensions for VFS entry.
std::string m_zeroconf
 Zero conf announce string for VFS protocol.
bool m_files
 Vfs entry can read files.
bool m_directories
 VFS entry can list directories.
bool m_filedirectories
 VFS entry contains file directories.
ProtocolInfo m_protocolInfo
 Info about protocol for network dialog.
- Protected Attributes inherited from ADDON::IAddonInstanceHandler

Detailed Description

A virtual filesystem entry add-on.

Constructor & Destructor Documentation

◆ CVFSEntry()

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

Construct from add-on properties.

addonInfoGeneral addon properties

◆ ~CVFSEntry()

ADDON::CVFSEntry::~CVFSEntry ( )

Member Function Documentation

◆ ClearOutIdle()

void ADDON::CVFSEntry::ClearOutIdle ( )

◆ Close()

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

◆ ContainsFiles()

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

◆ CreateDirectory()

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

◆ Delete()

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

◆ DirectoryExists()

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

◆ DisconnectAll()

void ADDON::CVFSEntry::DisconnectAll ( )

◆ Exists()

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

◆ GetChunkSize()

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

◆ GetDirectory()

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

◆ GetExtensions()

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

◆ GetLength()

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

◆ GetPosition()

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

◆ GetProtocolInfo()

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

◆ GetProtocols()

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

◆ GetZeroconfType()

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

◆ HasDirectories()

bool ADDON::CVFSEntry::HasDirectories ( ) const

◆ HasFileDirectories()

bool ADDON::CVFSEntry::HasFileDirectories ( ) const

◆ HasFiles()

bool ADDON::CVFSEntry::HasFiles ( ) const

◆ IoControl()

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

◆ 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 )

◆ RemoveDirectory()

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

◆ Rename()

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

◆ Seek()

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

◆ Stat()

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

◆ Truncate()

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

◆ Write()

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

Member Data Documentation

◆ m_directories

bool ADDON::CVFSEntry::m_directories

VFS entry can list directories.

◆ m_extensions

std::string ADDON::CVFSEntry::m_extensions

Extensions for VFS entry.

◆ m_filedirectories

bool ADDON::CVFSEntry::m_filedirectories

VFS entry contains file directories.

◆ m_files

bool ADDON::CVFSEntry::m_files

Vfs entry can read files.

◆ m_protocolInfo

ProtocolInfo ADDON::CVFSEntry::m_protocolInfo

Info about protocol for network dialog.

◆ m_protocols

std::string ADDON::CVFSEntry::m_protocols

Protocols for VFS entry.

◆ m_zeroconf

std::string ADDON::CVFSEntry::m_zeroconf

Zero conf announce string for VFS protocol.

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