Virtual file server directory entry
This class is used as an entry for files and folders in kodi::vfs::GetDirectory().
Example:
#include <kodi/Filesystem.h>
...
fprintf(stderr, "Directory have %lu entries\n", items.size());
for (unsigned long i = 0; i < items.size(); i++)
{
char buff[20];
strftime(buff, 20, "%Y-%m-%d %H:%M:%S", gmtime(&now));
fprintf(stderr, " - %04lu -- Folder: %s -- Name: %s -- Path: %s -- Time: %s\n",
i+1,
items[i].
Label().c_str(),
buff);
}
Definition: Filesystem.h:543
const std::string & Label(void) const
Get the directory entry name.
Definition: Filesystem.h:609
const std::string & Path(void) const
Get the path of the entry.
Definition: Filesystem.h:625
time_t DateTime()
Get file time and date for a new entry.
Definition: Filesystem.h:649
bool IsFolder(void) const
Used to check entry is folder.
Definition: Filesystem.h:633
bool ATTRIBUTE_HIDDEN GetDirectory(const std::string &path, const std::string &mask, std::vector< kodi::vfs::CDirEntry > &items)
Lists a directory.
Definition: Filesystem.h:888
It has the header #include <kodi/Filesystem.h> be included to enjoy it.
The following table contains values that can be set with class CDirEntry :
◆ CDirEntry()
CDirEntry |
( |
const std::string & |
label = "" , |
|
|
const std::string & |
path = "" , |
|
|
bool |
folder = false , |
|
|
int64_t |
size = -1 , |
|
|
time_t |
dateTime = 0 |
|
) |
| |
|
inline |
Constructor for VFS directory entry.
- Parameters
-
[in] | label | [opt] Name to use for entry |
[in] | path | [opt] Used path of the entry |
[in] | folder | [opt] If set entry used as folder |
[in] | size | [opt] If used as file, his size defined there |
[in] | dateTime | [opt] Date time of the entry |
◆ Label()
const std::string& Label |
( |
void |
| ) |
const |
|
inline |
Get the directory entry name.
- Returns
- Name of the entry
◆ Title()
const std::string& Title |
( |
void |
| ) |
const |
|
inline |
Get the optional title of entry.
- Returns
- Title of the entry, if exists
◆ Path()
const std::string& Path |
( |
void |
| ) |
const |
|
inline |
Get the path of the entry.
- Returns
- File system path of the entry
◆ IsFolder()
bool IsFolder |
( |
void |
| ) |
const |
|
inline |
Used to check entry is folder.
- Returns
- true if entry is a folder
◆ Size()
int64_t Size |
( |
void |
| ) |
const |
|
inline |
If file, the size of the file.
- Returns
- Defined file size
◆ DateTime()
Get file time and date for a new entry.
- Returns
- The with time_t defined date and time of file
◆ SetLabel()
void SetLabel |
( |
const std::string & |
label | ) |
|
|
inline |
Set the label name.
- Parameters
-
◆ SetTitle()
void SetTitle |
( |
const std::string & |
title | ) |
|
|
inline |
Set the title name.
- Parameters
-
[in] | title | title name of entry |
◆ SetPath()
void SetPath |
( |
const std::string & |
path | ) |
|
|
inline |
Set the path of the entry.
- Parameters
-
◆ SetFolder()
void SetFolder |
( |
bool |
folder | ) |
|
|
inline |
Set the entry defined as folder.
- Parameters
-
[in] | folder | If true becomes entry defined as folder |
◆ SetSize()
void SetSize |
( |
int64_t |
size | ) |
|
|
inline |
Set a file size for a new entry.
- Parameters
-
[in] | size | Size to set for dir entry |
◆ SetDateTime()
void SetDateTime |
( |
time_t |
dateTime | ) |
|
|
inline |
Set file time and date for a new entry.
- Parameters
-
[in] | dateTime | The with time_t defined date and time of file |
◆ AddProperty()
void AddProperty |
( |
const std::string & |
id, |
|
|
const std::string & |
value |
|
) |
| |
|
inline |
Add a by string defined property entry to directory entry.
- Note
- A property can be used to add some special information about a file or directory entry, this can be used on other places to do the right work of them.
- Parameters
-
[in] | id | Identification name of property |
[in] | value | The property value to add by given id |
◆ ClearProperties()
Clear all present properties.
◆ GetProperties()
const std::map<std::string, std::string>& GetProperties |
( |
| ) |
const |
|
inline |
Get the present properties list on directory entry.
- Returns
- map with all present properties