dwww Home | Manual pages | Find package

folders(3)                          libmtp                          folders(3)

NAME
       libmtp - folders

SYNOPSIS
   Functions
       LIBMTP_folder_t * LIBMTP_new_folder_t (void)
       void LIBMTP_destroy_folder_t (LIBMTP_folder_t *)
       LIBMTP_folder_t * LIBMTP_Get_Folder_List (LIBMTP_mtpdevice_t *)
       LIBMTP_folder_t * LIBMTP_Get_Folder_List_For_Storage
           (LIBMTP_mtpdevice_t *, uint32_t const)
       LIBMTP_folder_t * LIBMTP_Find_Folder (LIBMTP_folder_t *, uint32_t
           const)
       uint32_t LIBMTP_Create_Folder (LIBMTP_mtpdevice_t *, char *, uint32_t,
           uint32_t)
       int LIBMTP_Set_Folder_Name (LIBMTP_mtpdevice_t *, LIBMTP_folder_t *,
           const char *)

Detailed Description
Function Documentation
   uint32_t LIBMTP_Create_Folder (LIBMTP_mtpdevice_t * device, char * name,
       uint32_t parent_id, uint32_t storage_id)
       This create a folder on the current MTP device. The PTP name for a
       folder is 'association'. The PTP/MTP devices does not have an internal
       'folder' concept really, it contains a flat list of all files and some
       file are 'associations' that other files and folders may refer to as
       its 'parent'.

       Parameters
           device a pointer to the device to create the folder on.
           name the name of the new folder. Note this can be modified if the
           device does not support all the characters in the name.
           parent_id id of parent folder to add the new folder to, or
           0xFFFFFFFF to put it in the root directory.
           storage_id id of the storage to add this new folder to. notice that
           you cannot mismatch storage id and parent id: they must both be on
           the same storage! Pass in 0 if you want to create this folder on
           the default storage.

       Returns
           id to new folder or 0 if an error occurred

       References LIBMTP_mtpdevice_struct::params, and
       LIBMTP_mtpdevice_struct::usbinfo.

   void LIBMTP_destroy_folder_t (LIBMTP_folder_t * folder)
       This recursively deletes the memory for a folder structure. This shall
       typically be called on a top-level folder list to detsroy the entire
       folder tree.

       Parameters
           folder folder structure to destroy

       See also
           LIBMTP_new_folder_t()

       References LIBMTP_folder_struct::child, LIBMTP_folder_struct::name, and
       LIBMTP_folder_struct::sibling.

   LIBMTP_folder_t* LIBMTP_Find_Folder (LIBMTP_folder_t * folderlist, uint32_t
       id)
       Helper function. Returns a folder structure for a specified id.

       Parameters
           folderlist list of folders to search @id id of folder to look for

       Returns
           a folder or NULL if not found

       References LIBMTP_folder_struct::child,
       LIBMTP_folder_struct::folder_id, and LIBMTP_folder_struct::sibling.

   LIBMTP_folder_t* LIBMTP_Get_Folder_List (LIBMTP_mtpdevice_t * device)
       This returns a list of all folders available on the current MTP device.

       Parameters
           device a pointer to the device to get the folder listing for.

       Returns
           a list of folders

       References LIBMTP_Get_Folder_List_For_Storage().

   LIBMTP_folder_t* LIBMTP_Get_Folder_List_For_Storage (LIBMTP_mtpdevice_t *
       device, uint32_t const storage)
       This returns a list of all folders available on the current MTP device.

       Parameters
           device a pointer to the device to get the folder listing for.
           storage a storage ID to get the folder list from

       Returns
           a list of folders

       References LIBMTP_mtpdevice_struct::params.

       Referenced by LIBMTP_Get_Folder_List().

   LIBMTP_folder_t* LIBMTP_new_folder_t (void)
       This creates a new folder structure and allocates memory for it. Notice
       that if you add strings to this structure they will be freed by the
       corresponding LIBMTP_folder_track_t operation later, so be careful of
       using strdup() when assigning strings, e.g.:

       Returns
           a pointer to the newly allocated folder structure.

       See also
           LIBMTP_destroy_folder_t()

       References LIBMTP_folder_struct::folder_id.

   int LIBMTP_Set_Folder_Name (LIBMTP_mtpdevice_t * device, LIBMTP_folder_t *
       folder, const char * newname)
       This function renames a single folder. This simply means that the
       PTP_OPC_ObjectFileName property is updated, if this is supported by the
       device.

       Parameters
           device a pointer to the device that contains the file.
           folder the folder metadata of the folder to rename. On success, the
           name member is updated. Be aware, that this name can be different
           than newname depending of device restrictions.
           newname the new name for this object.

       Returns
           0 on success, any other value means failure.

Author
       Generated automatically by Doxygen for libmtp from the source code.

Version 1.1.19                  Thu Mar 24 2022                     folders(3)

Generated by dwww version 1.14 on Sun Dec 29 19:19:10 CET 2024.