Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
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)
 
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
KODI_ADDON_INSTANCE_INFO m_info {}
 
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 ( )

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

◆ GetLength()

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

◆ GetPosition()

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

◆ 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::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
protected

VFS entry can list directories.

◆ m_extensions

std::string ADDON::CVFSEntry::m_extensions
protected

Extensions for VFS entry.

◆ m_filedirectories

bool ADDON::CVFSEntry::m_filedirectories
protected

VFS entry contains file directories.

◆ m_files

bool ADDON::CVFSEntry::m_files
protected

Vfs entry can read files.

◆ m_protocolInfo

ProtocolInfo ADDON::CVFSEntry::m_protocolInfo
protected

Info about protocol for network dialog.

◆ m_protocols

std::string ADDON::CVFSEntry::m_protocols
protected

Protocols for VFS entry.

◆ m_zeroconf

std::string ADDON::CVFSEntry::m_zeroconf
protected

Zero conf announce string for VFS protocol.


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