Provided by: libmtp-doc_1.1.21-3.1build1_all
NAME
libmtp - types
SYNOPSIS
Macros #define LIBMTP_DEBUG_NONE 0x00 #define LIBMTP_DEBUG_PTP 0x01 #define LIBMTP_DEBUG_PLST 0x02 #define LIBMTP_DEBUG_USB 0x04 #define LIBMTP_DEBUG_DATA 0x08 #define LIBMTP_DEBUG_ALL 0xFF #define LIBMTP_FILETYPE_IS_AUDIO(a) #define LIBMTP_FILETYPE_IS_VIDEO(a) #define LIBMTP_FILETYPE_IS_AUDIOVIDEO(a) #define LIBMTP_FILETYPE_IS_TRACK(a) #define LIBMTP_FILETYPE_IS_IMAGE(a) #define LIBMTP_FILETYPE_IS_ADDRESSBOOK(a) #define LIBMTP_FILETYPE_IS_CALENDAR(a) #define LIBMTP_HANDLER_RETURN_OK 0 #define LIBMTP_HANDLER_RETURN_ERROR 1 #define LIBMTP_HANDLER_RETURN_CANCEL 2 Typedefs typedef struct LIBMTP_device_entry_struct LIBMTP_device_entry_t typedef struct LIBMTP_raw_device_struct LIBMTP_raw_device_t typedef struct LIBMTP_error_struct LIBMTP_error_t typedef struct LIBMTP_allowed_values_struct LIBMTP_allowed_values_t typedef struct LIBMTP_device_extension_struct LIBMTP_device_extension_t typedef struct LIBMTP_mtpdevice_struct LIBMTP_mtpdevice_t typedef struct LIBMTP_file_struct LIBMTP_file_t typedef struct LIBMTP_track_struct LIBMTP_track_t typedef struct LIBMTP_playlist_struct LIBMTP_playlist_t typedef struct LIBMTP_album_struct LIBMTP_album_t typedef struct LIBMTP_folder_struct LIBMTP_folder_t typedef struct LIBMTP_filesampledata_struct LIBMTP_filesampledata_t typedef struct LIBMTP_devicestorage_struct LIBMTP_devicestorage_t typedef int(* LIBMTP_progressfunc_t) (uint64_t const sent, uint64_t const total, void const *const data) typedef uint16_t(* MTPDataGetFunc) (void *params, void *priv, uint32_t wantlen, unsigned char *data, uint32_t *gotlen) typedef uint16_t(* MTPDataPutFunc) (void *params, void *priv, uint32_t sendlen, unsigned char *data, uint32_t *putlen) Enumerations enum LIBMTP_filetype_t { LIBMTP_FILETYPE_FOLDER, LIBMTP_FILETYPE_WAV, LIBMTP_FILETYPE_MP3, LIBMTP_FILETYPE_WMA, LIBMTP_FILETYPE_OGG, LIBMTP_FILETYPE_AUDIBLE, LIBMTP_FILETYPE_MP4, LIBMTP_FILETYPE_UNDEF_AUDIO, LIBMTP_FILETYPE_WMV, LIBMTP_FILETYPE_AVI, LIBMTP_FILETYPE_MPEG, LIBMTP_FILETYPE_ASF, LIBMTP_FILETYPE_QT, LIBMTP_FILETYPE_UNDEF_VIDEO, LIBMTP_FILETYPE_JPEG, LIBMTP_FILETYPE_JFIF, LIBMTP_FILETYPE_TIFF, LIBMTP_FILETYPE_BMP, LIBMTP_FILETYPE_GIF, LIBMTP_FILETYPE_PICT, LIBMTP_FILETYPE_PNG, LIBMTP_FILETYPE_VCALENDAR1, LIBMTP_FILETYPE_VCALENDAR2, LIBMTP_FILETYPE_VCARD2, LIBMTP_FILETYPE_VCARD3, LIBMTP_FILETYPE_WINDOWSIMAGEFORMAT, LIBMTP_FILETYPE_WINEXEC, LIBMTP_FILETYPE_TEXT, LIBMTP_FILETYPE_HTML, LIBMTP_FILETYPE_FIRMWARE, LIBMTP_FILETYPE_AAC, LIBMTP_FILETYPE_MEDIACARD, LIBMTP_FILETYPE_FLAC, LIBMTP_FILETYPE_MP2, LIBMTP_FILETYPE_M4A, LIBMTP_FILETYPE_DOC, LIBMTP_FILETYPE_XML, LIBMTP_FILETYPE_XLS, LIBMTP_FILETYPE_PPT, LIBMTP_FILETYPE_MHT, LIBMTP_FILETYPE_JP2, LIBMTP_FILETYPE_JPX, LIBMTP_FILETYPE_ALBUM, LIBMTP_FILETYPE_PLAYLIST, LIBMTP_FILETYPE_UNKNOWN } enum LIBMTP_property_t { LIBMTP_PROPERTY_StorageID, LIBMTP_PROPERTY_ObjectFormat, LIBMTP_PROPERTY_ProtectionStatus, LIBMTP_PROPERTY_ObjectSize, LIBMTP_PROPERTY_AssociationType, LIBMTP_PROPERTY_AssociationDesc, LIBMTP_PROPERTY_ObjectFileName, LIBMTP_PROPERTY_DateCreated, LIBMTP_PROPERTY_DateModified, LIBMTP_PROPERTY_Keywords, LIBMTP_PROPERTY_ParentObject, LIBMTP_PROPERTY_AllowedFolderContents, LIBMTP_PROPERTY_Hidden, LIBMTP_PROPERTY_SystemObject, LIBMTP_PROPERTY_PersistantUniqueObjectIdentifier, LIBMTP_PROPERTY_SyncID, LIBMTP_PROPERTY_PropertyBag, LIBMTP_PROPERTY_Name, LIBMTP_PROPERTY_CreatedBy, LIBMTP_PROPERTY_Artist, LIBMTP_PROPERTY_DateAuthored, LIBMTP_PROPERTY_Description, LIBMTP_PROPERTY_URLReference, LIBMTP_PROPERTY_LanguageLocale, LIBMTP_PROPERTY_CopyrightInformation, LIBMTP_PROPERTY_Source, LIBMTP_PROPERTY_OriginLocation, LIBMTP_PROPERTY_DateAdded, LIBMTP_PROPERTY_NonConsumable, LIBMTP_PROPERTY_CorruptOrUnplayable, LIBMTP_PROPERTY_ProducerSerialNumber, LIBMTP_PROPERTY_RepresentativeSampleFormat, LIBMTP_PROPERTY_RepresentativeSampleSize, LIBMTP_PROPERTY_RepresentativeSampleHeight, LIBMTP_PROPERTY_RepresentativeSampleWidth, LIBMTP_PROPERTY_RepresentativeSampleDuration, LIBMTP_PROPERTY_RepresentativeSampleData, LIBMTP_PROPERTY_Width, LIBMTP_PROPERTY_Height, LIBMTP_PROPERTY_Duration, LIBMTP_PROPERTY_Rating, LIBMTP_PROPERTY_Track, LIBMTP_PROPERTY_Genre, LIBMTP_PROPERTY_Credits, LIBMTP_PROPERTY_Lyrics, LIBMTP_PROPERTY_SubscriptionContentID, LIBMTP_PROPERTY_ProducedBy, LIBMTP_PROPERTY_UseCount, LIBMTP_PROPERTY_SkipCount, LIBMTP_PROPERTY_LastAccessed, LIBMTP_PROPERTY_ParentalRating, LIBMTP_PROPERTY_MetaGenre, LIBMTP_PROPERTY_Composer, LIBMTP_PROPERTY_EffectiveRating, LIBMTP_PROPERTY_Subtitle, LIBMTP_PROPERTY_OriginalReleaseDate, LIBMTP_PROPERTY_AlbumName, LIBMTP_PROPERTY_AlbumArtist, LIBMTP_PROPERTY_Mood, LIBMTP_PROPERTY_DRMStatus, LIBMTP_PROPERTY_SubDescription, LIBMTP_PROPERTY_IsCropped, LIBMTP_PROPERTY_IsColorCorrected, LIBMTP_PROPERTY_ImageBitDepth, LIBMTP_PROPERTY_Fnumber, LIBMTP_PROPERTY_ExposureTime, LIBMTP_PROPERTY_ExposureIndex, LIBMTP_PROPERTY_DisplayName, LIBMTP_PROPERTY_BodyText, LIBMTP_PROPERTY_Subject, LIBMTP_PROPERTY_Priority, LIBMTP_PROPERTY_GivenName, LIBMTP_PROPERTY_MiddleNames, LIBMTP_PROPERTY_FamilyName, LIBMTP_PROPERTY_Prefix, LIBMTP_PROPERTY_Suffix, LIBMTP_PROPERTY_PhoneticGivenName, LIBMTP_PROPERTY_PhoneticFamilyName, LIBMTP_PROPERTY_EmailPrimary, LIBMTP_PROPERTY_EmailPersonal1, LIBMTP_PROPERTY_EmailPersonal2, LIBMTP_PROPERTY_EmailBusiness1, LIBMTP_PROPERTY_EmailBusiness2, LIBMTP_PROPERTY_EmailOthers, LIBMTP_PROPERTY_PhoneNumberPrimary, LIBMTP_PROPERTY_PhoneNumberPersonal, LIBMTP_PROPERTY_PhoneNumberPersonal2, LIBMTP_PROPERTY_PhoneNumberBusiness, LIBMTP_PROPERTY_PhoneNumberBusiness2, LIBMTP_PROPERTY_PhoneNumberMobile, LIBMTP_PROPERTY_PhoneNumberMobile2, LIBMTP_PROPERTY_FaxNumberPrimary, LIBMTP_PROPERTY_FaxNumberPersonal, LIBMTP_PROPERTY_FaxNumberBusiness, LIBMTP_PROPERTY_PagerNumber, LIBMTP_PROPERTY_PhoneNumberOthers, LIBMTP_PROPERTY_PrimaryWebAddress, LIBMTP_PROPERTY_PersonalWebAddress, LIBMTP_PROPERTY_BusinessWebAddress, LIBMTP_PROPERTY_InstantMessengerAddress, LIBMTP_PROPERTY_InstantMessengerAddress2, LIBMTP_PROPERTY_InstantMessengerAddress3, LIBMTP_PROPERTY_PostalAddressPersonalFull, LIBMTP_PROPERTY_PostalAddressPersonalFullLine1, LIBMTP_PROPERTY_PostalAddressPersonalFullLine2, LIBMTP_PROPERTY_PostalAddressPersonalFullCity, LIBMTP_PROPERTY_PostalAddressPersonalFullRegion, LIBMTP_PROPERTY_PostalAddressPersonalFullPostalCode, LIBMTP_PROPERTY_PostalAddressPersonalFullCountry, LIBMTP_PROPERTY_PostalAddressBusinessFull, LIBMTP_PROPERTY_PostalAddressBusinessLine1, LIBMTP_PROPERTY_PostalAddressBusinessLine2, LIBMTP_PROPERTY_PostalAddressBusinessCity, LIBMTP_PROPERTY_PostalAddressBusinessRegion, LIBMTP_PROPERTY_PostalAddressBusinessPostalCode, LIBMTP_PROPERTY_PostalAddressBusinessCountry, LIBMTP_PROPERTY_PostalAddressOtherFull, LIBMTP_PROPERTY_PostalAddressOtherLine1, LIBMTP_PROPERTY_PostalAddressOtherLine2, LIBMTP_PROPERTY_PostalAddressOtherCity, LIBMTP_PROPERTY_PostalAddressOtherRegion, LIBMTP_PROPERTY_PostalAddressOtherPostalCode, LIBMTP_PROPERTY_PostalAddressOtherCountry, LIBMTP_PROPERTY_OrganizationName, LIBMTP_PROPERTY_PhoneticOrganizationName, LIBMTP_PROPERTY_Role, LIBMTP_PROPERTY_Birthdate, LIBMTP_PROPERTY_MessageTo, LIBMTP_PROPERTY_MessageCC, LIBMTP_PROPERTY_MessageBCC, LIBMTP_PROPERTY_MessageRead, LIBMTP_PROPERTY_MessageReceivedTime, LIBMTP_PROPERTY_MessageSender, LIBMTP_PROPERTY_ActivityBeginTime, LIBMTP_PROPERTY_ActivityEndTime, LIBMTP_PROPERTY_ActivityLocation, LIBMTP_PROPERTY_ActivityRequiredAttendees, LIBMTP_PROPERTY_ActivityOptionalAttendees, LIBMTP_PROPERTY_ActivityResources, LIBMTP_PROPERTY_ActivityAccepted, LIBMTP_PROPERTY_Owner, LIBMTP_PROPERTY_Editor, LIBMTP_PROPERTY_Webmaster, LIBMTP_PROPERTY_URLSource, LIBMTP_PROPERTY_URLDestination, LIBMTP_PROPERTY_TimeBookmark, LIBMTP_PROPERTY_ObjectBookmark, LIBMTP_PROPERTY_ByteBookmark, LIBMTP_PROPERTY_LastBuildDate, LIBMTP_PROPERTY_TimetoLive, LIBMTP_PROPERTY_MediaGUID, LIBMTP_PROPERTY_TotalBitRate, LIBMTP_PROPERTY_BitRateType, LIBMTP_PROPERTY_SampleRate, LIBMTP_PROPERTY_NumberOfChannels, LIBMTP_PROPERTY_AudioBitDepth, LIBMTP_PROPERTY_ScanDepth, LIBMTP_PROPERTY_AudioWAVECodec, LIBMTP_PROPERTY_AudioBitRate, LIBMTP_PROPERTY_VideoFourCCCodec, LIBMTP_PROPERTY_VideoBitRate, LIBMTP_PROPERTY_FramesPerThousandSeconds, LIBMTP_PROPERTY_KeyFrameDistance, LIBMTP_PROPERTY_BufferSize, LIBMTP_PROPERTY_EncodingQuality, LIBMTP_PROPERTY_EncodingProfile, LIBMTP_PROPERTY_BuyFlag, LIBMTP_PROPERTY_UNKNOWN } enum LIBMTP_datatype_t { LIBMTP_DATATYPE_INT8, LIBMTP_DATATYPE_UINT8, LIBMTP_DATATYPE_INT16, LIBMTP_DATATYPE_UINT16, LIBMTP_DATATYPE_INT32, LIBMTP_DATATYPE_UINT32, LIBMTP_DATATYPE_INT64, LIBMTP_DATATYPE_UINT64 } enum LIBMTP_devicecap_t { LIBMTP_DEVICECAP_GetPartialObject, LIBMTP_DEVICECAP_SendPartialObject, LIBMTP_DEVICECAP_EditObjects, LIBMTP_DEVICECAP_MoveObject, LIBMTP_DEVICECAP_CopyObject } enum LIBMTP_error_number_t { LIBMTP_ERROR_NONE, LIBMTP_ERROR_GENERAL, LIBMTP_ERROR_PTP_LAYER, LIBMTP_ERROR_USB_LAYER, LIBMTP_ERROR_MEMORY_ALLOCATION, LIBMTP_ERROR_NO_DEVICE_ATTACHED, LIBMTP_ERROR_STORAGE_FULL, LIBMTP_ERROR_CONNECTING, LIBMTP_ERROR_CANCELLED }
Detailed Description
Macro Definition Documentation
#define LIBMTP_DEBUG_NONE 0x00 The debug flags defined here are the external flags used by the libmtp library interface. Please keep this list in sync with libmtp.c. #define LIBMTP_FILETYPE_IS_ADDRESSBOOK(a) Value:.PP (a == LIBMTP_FILETYPE_VCARD2 ||\ a == LIBMTP_FILETYPE_VCARD3) Addressbook and Business card filetype test #define LIBMTP_FILETYPE_IS_AUDIO(a) Value:.PP (a == LIBMTP_FILETYPE_WAV ||\ a == LIBMTP_FILETYPE_MP3 ||\ a == LIBMTP_FILETYPE_MP2 ||\ a == LIBMTP_FILETYPE_WMA ||\ a == LIBMTP_FILETYPE_OGG ||\ a == LIBMTP_FILETYPE_FLAC ||\ a == LIBMTP_FILETYPE_AAC ||\ a == LIBMTP_FILETYPE_M4A ||\ a == LIBMTP_FILETYPE_AUDIBLE ||\ a == LIBMTP_FILETYPE_UNDEF_AUDIO) Audio filetype test. For filetypes that can be either audio or video, use LIBMTP_FILETYPE_IS_AUDIOVIDEO #define LIBMTP_FILETYPE_IS_AUDIOVIDEO(a) Value:.PP (a == LIBMTP_FILETYPE_MP4 ||\ a == LIBMTP_FILETYPE_ASF ||\ a == LIBMTP_FILETYPE_QT) Audio and&slash;or video filetype test. #define LIBMTP_FILETYPE_IS_CALENDAR(a) Value:.PP (a == LIBMTP_FILETYPE_VCALENDAR1 ||\ a == LIBMTP_FILETYPE_VCALENDAR2) Calendar and Appointment filetype test #define LIBMTP_FILETYPE_IS_IMAGE(a) Value:.PP (a == LIBMTP_FILETYPE_JPEG ||\ a == LIBMTP_FILETYPE_JFIF ||\ a == LIBMTP_FILETYPE_TIFF ||\ a == LIBMTP_FILETYPE_BMP ||\ a == LIBMTP_FILETYPE_GIF ||\ a == LIBMTP_FILETYPE_PICT ||\ a == LIBMTP_FILETYPE_PNG ||\ a == LIBMTP_FILETYPE_JP2 ||\ a == LIBMTP_FILETYPE_JPX ||\ a == LIBMTP_FILETYPE_WINDOWSIMAGEFORMAT) Image filetype test #define LIBMTP_FILETYPE_IS_TRACK(a) Value:.PP (LIBMTP_FILETYPE_IS_AUDIO(a) ||\ LIBMTP_FILETYPE_IS_VIDEO(a) ||\ LIBMTP_FILETYPE_IS_AUDIOVIDEO(a)) Test if filetype is a track. Use this to determine if the File API or Track API should be used to upload or download an object. Examples sendtr.c, and tracks.c. #define LIBMTP_FILETYPE_IS_VIDEO(a) Value:.PP (a == LIBMTP_FILETYPE_WMV ||\ a == LIBMTP_FILETYPE_AVI ||\ a == LIBMTP_FILETYPE_MPEG ||\ a == LIBMTP_FILETYPE_UNDEF_VIDEO) Video filetype test. For filetypes that can be either audio or video, use LIBMTP_FILETYPE_IS_AUDIOVIDEO #define LIBMTP_HANDLER_RETURN_OK 0 The return codes for the get/put functions
Typedef Documentation
typedef struct LIBMTP_album_struct LIBMTP_album_t See also LIBMTP_album_struct typedef struct LIBMTP_allowed_values_struct LIBMTP_allowed_values_t See also LIBMTP_allowed_values_struct typedef struct LIBMTP_device_entry_struct LIBMTP_device_entry_t See also LIBMTP_device_entry_struct typedef struct LIBMTP_devicestorage_struct LIBMTP_devicestorage_t See also LIBMTP_devicestorage_t typedef struct LIBMTP_error_struct LIBMTP_error_t See also LIBMTP_error_struct typedef struct LIBMTP_file_struct LIBMTP_file_t See also LIBMTP_file_struct typedef struct LIBMTP_filesampledata_struct LIBMTP_filesampledata_t See also LIBMTP_filesample_t typedef struct LIBMTP_folder_struct LIBMTP_folder_t See also LIBMTP_folder_t typedef struct LIBMTP_mtpdevice_struct LIBMTP_mtpdevice_t < See also LIBMTP_device_extension_struct LIBMTP_mtpdevice_struct typedef struct LIBMTP_playlist_struct LIBMTP_playlist_t See also LIBMTP_playlist_struct typedef int(* LIBMTP_progressfunc_t) (uint64_t const sent, uint64_t const total, void const *const data) The callback type definition. Notice that a progress percentage ratio is easy to calculate by dividing sent by total. Parameters sent the number of bytes sent so far total the total number of bytes to send data a user-defined dereferencable pointer Returns if anything else than 0 is returned, the current transfer will be interrupted / cancelled. typedef struct LIBMTP_raw_device_struct LIBMTP_raw_device_t See also LIBMTP_raw_device_struct typedef struct LIBMTP_track_struct LIBMTP_track_t See also LIBMTP_track_struct typedef uint16_t(* MTPDataGetFunc) (void *params, void *priv, uint32_t wantlen, unsigned char *data, uint32_t *gotlen) Callback function for get by handler function Parameters params the device parameters priv a user-defined dereferencable pointer wantlen the number of bytes wanted data a buffer to write the data to gotlen pointer to the number of bytes actually written to data Returns LIBMTP_HANDLER_RETURN_OK if successful, LIBMTP_HANDLER_RETURN_ERROR on error or LIBMTP_HANDLER_RETURN_CANCEL to cancel the transfer typedef uint16_t(* MTPDataPutFunc) (void *params, void *priv, uint32_t sendlen, unsigned char *data, uint32_t *putlen) Callback function for put by handler function Parameters params the device parameters priv a user-defined dereferencable pointer sendlen the number of bytes available data a buffer to read the data from putlen pointer to the number of bytes actually read from data Returns LIBMTP_HANDLER_RETURN_OK if successful, LIBMTP_HANDLER_RETURN_ERROR on error or LIBMTP_HANDLER_RETURN_CANCEL to cancel the transfer
Enumeration Type Documentation
enum LIBMTP_datatype_t These are the data types enum LIBMTP_devicecap_t These are device capabilities Enumerator LIBMTP_DEVICECAP_GetPartialObject This capability tells whether you can call the function getting partial objects, See also LIBMTP_GetPartialObject() LIBMTP_DEVICECAP_SendPartialObject This capability tells whether you can call the function sending partial objects. See also LIBMTP_SendPartialObject() LIBMTP_DEVICECAP_EditObjects This capability tells whether you can call the functions editing objects in-place on a device. See also LIBMTP_BeginEditObject() LIBMTP_EndEditObject() LIBMTP_TruncateObject() LIBMTP_DEVICECAP_MoveObject This capability tells whether you can call the function to move an object, See also LIBMTP_MoveObject() LIBMTP_DEVICECAP_CopyObject This capability tells whether you can call the function to copy an object, See also LIBMTP_CopyObject() enum LIBMTP_error_number_t These are the numbered error codes. You can also get string representations for errors. enum LIBMTP_filetype_t The filetypes defined here are the external types used by the libmtp library interface. The types used internally as PTP-defined enumerator types is something different. enum LIBMTP_property_t The properties defined here are the external types used by the libmtp library interface.
Author
Generated automatically by Doxygen for libmtp from the source code.