![]() |
![]() |
![]() |
![]() |
Information about items found during mediastore exploration
#include <mme/explore.h> typedef struct s_mme_explore_info { uint32_t flags; uint32_t index; char *path; mme_metadata_hdl_t *metadata; } mme_explore_info_t;
The structure mme_explore_info_t carries information about items (folders and files) found at a specified path on a mediastore. It contains at least the members described in the table below.
Member | Type | Description |
---|---|---|
flags | uint32_t | Flags set to a value defined by MME_EXPLORE_* bit masks, described below. |
index | unint32_t | Index for this entry in the parent folder. |
path | char | A pointer to the full path to the item on the mediastore. |
metadata | mme_metadata_hdl_t | A pointer to the metadata for this item, if metadata was requested and found. If this pointer is not zero, you know that metadata for this item is available. You do not need to check the MME_EXPLORE_FLAGS_HAS_METADATA flag as well. |
Bitmasks that support mediastore exploration are described in the table below:
Constant | Value | Description |
---|---|---|
MME_EXPLORE_FILTER_INCLUDE | 0x00000000 | Inbound flag: instruct the MME to treat the file filter specification as an include-only specifier. This is the default setting if no flag is specified. |
MME_EXPLORE_FLAGS_IS_FOLDER | 0x00000001 | The item is a folder — not a file. |
MME_EXPLORE_FLAGS_IS_PLAYLIST | 0x00000002 | The item is a playlist (folder or file). |
MME_EXPLORE_FLAGS_IS_PLAYLIST_ITEM | 0x00000004 | The item is a name from a playlist. |
MME_EXPLORE_FLAGS_IS_PLAYLIST_FILENAME | 0x00000008 | The item is a resolved filename from a playlist file. The MME returns this value only for items retrieved from playlists when MME_EXPLORE_RESOLVE_PLAYLIST_ITEM is used for items successfully converted to a file on the mediastore. Otherwise, the MME returns the MME_EXPLORE_FLAGS_IS_PLAYLIST_ITEM flag with the item. |
MME_EXPLORE_FLAGS_HAS_METADATA | 0x00000100 | The item has metadata. |
MME_EXPLORE_RESOLVE_PLAYLIST_ITEM | 0x00010000 | Inbound flag: instruct the MME to resolve playlist file entries immediately. Using this flag results in much faster resolution of playlist contents to playable files, but the actual playlist entry value is not visible to the client application. This flag overrides the MME_EXPLORE_UNCONVERTED_CHAR_ENCODING flag. |
MME_EXPLORE_FILTER_EXCLUDE | 0x00020000 | Inbound flag: instruct the MME to treat the file filter specification as an exclude specifier. |
MME_EXPLORE_UNCONVERTED_CHAR_ENCODING | 0x00040000 | Inbound flag: instruct the MME to not perform any character conversion on entries before returning them. See “MME_EXPLORE_UNCONVERTED_CHAR_ENCODING flag” below. |
Normally, the MME attempts to convert playlist file entries to UTF-8.
Setting the MME_EXPLORE_UNCONVERTED_CHAR_ENCODING inbound flag is useful for seeing what comes out of playlists when their entries don't appear to convert to real files.
![]() |
If the MME_EXPLORE_RESOLVE_PLAYLIST_ITEM flag is set, this setting overrides the MME_EXPLORE_UNCONVERTED_CHAR_ENCODING flag. |
Below is an example from the command-line application mmexplore showing how MME_EXPLORE_* bit masks can be used.
static const char *item_type_str(uint32_t flags) { if (flags & MME_EXPLORE_FLAGS_IS_PLAYLIST_FILENAME) { return "PF"; } if (flags & MME_EXPLORE_FLAGS_IS_PLAYLIST_ITEM) { return "PI"; } if ((flags & (MME_EXPLORE_FLAGS_IS_PLAYLIST|MME_EXPLORE_FLAGS_IS_FOLDER)) == (MME_EXPLORE_FLAGS_IS_PLAYLIST|MME_EXPLORE_FLAGS_IS_FOLDER)) { return "DP"; } if (flags & MME_EXPLORE_FLAGS_IS_PLAYLIST) { return "P "; } if (flags & MME_EXPLORE_FLAGS_IS_FOLDER) { return "D "; } return "F "; }
QNX Multimedia
mme_explore_end(), mme_explore_hdl_t, mme_explore_info_free(), mme_explore_info_get(), mme_explore_playlist_find_file(), mme_explore_position_set(), mme_explore_size_get(), mme_explore_start()
![]() |
![]() |
![]() |
![]() |