Library to allo USB PTP device to be hosted by the mbed platform

Dependents:   class_project_main

Committer:
jakowisp
Date:
Mon Oct 07 04:45:55 2013 +0000
Revision:
11:3b072cf16df8
Parent:
3:1fcb46ab18df
Add code for Property description download.; Add code decoder logic.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jakowisp 3:1fcb46ab18df 1 /**
jakowisp 3:1fcb46ab18df 2 * @file PIMAconst.h
jakowisp 3:1fcb46ab18df 3 * @brief PIMA constants definitions
jakowisp 3:1fcb46ab18df 4 * @author Dwayne Dilbeck
jakowisp 3:1fcb46ab18df 5 * @date 8/23/2013
jakowisp 3:1fcb46ab18df 6 *
jakowisp 3:1fcb46ab18df 7 * @par Copyright:
jakowisp 3:1fcb46ab18df 8 * Copyright (c) 2013 Dwayne Dilbeck
jakowisp 3:1fcb46ab18df 9 * @par License:
jakowisp 3:1fcb46ab18df 10 * This software is distributed under the terms of the GNU Lesser General Public License
jakowisp 3:1fcb46ab18df 11 *
jakowisp 3:1fcb46ab18df 12 * mbed USBHostPTP Library(PIMA15740 Constants definition)
jakowisp 1:71c0e9dc153d 13 *
jakowisp 1:71c0e9dc153d 14 * Special thanks to the 'Circuits at Home',
jakowisp 1:71c0e9dc153d 15 * Reviewing thier code helped in understanding what needed to be done in my code for the mbed.
jakowisp 3:1fcb46ab18df 16 *
jakowisp 3:1fcb46ab18df 17 * @par Reference
jakowisp 1:71c0e9dc153d 18 * Circuits At Home, LTD
jakowisp 1:71c0e9dc153d 19 * Web : http://www.circuitsathome.com
jakowisp 1:71c0e9dc153d 20 * e-mail : support@circuitsathome.com
jakowisp 1:71c0e9dc153d 21 */
jakowisp 1:71c0e9dc153d 22
jakowisp 0:98cf19bcd828 23
jakowisp 3:1fcb46ab18df 24 #ifndef __PIMACONST_H__
jakowisp 3:1fcb46ab18df 25 #define __PIMACONST_H__
jakowisp 0:98cf19bcd828 26
jakowisp 1:71c0e9dc153d 27 #define PIMA_CONTAINER_HEADER_LENGTH 0xc
jakowisp 0:98cf19bcd828 28
jakowisp 3:1fcb46ab18df 29 // PIMA container types
jakowisp 3:1fcb46ab18df 30 // PIMA 15740:2000 standard Appendix D.7.1.1
jakowisp 1:71c0e9dc153d 31 #define PIMA_CONTAINER_UNDEFINED 0x0000
jakowisp 1:71c0e9dc153d 32 #define PIMA_CONTAINER_COMMAND 0x0001
jakowisp 1:71c0e9dc153d 33 #define PIMA_CONTAINER_DATA 0x0002
jakowisp 1:71c0e9dc153d 34 #define PIMA_CONTAINER_RESPONSE 0x0003
jakowisp 1:71c0e9dc153d 35 #define PIMA_CONTAINER_EVENT 0x0004
jakowisp 0:98cf19bcd828 36
jakowisp 0:98cf19bcd828 37 /* Vendor IDs */
jakowisp 3:1fcb46ab18df 38 //http://www.imaging.org/ist/resources/standards/files/Final_PTP_Vendor_Extension_Registry.pdf
jakowisp 3:1fcb46ab18df 39 #define PTP_VENDOR_EASTMAN_KODAK 0x00000001
jakowisp 3:1fcb46ab18df 40 #define PTP_VENDOR_SEIKO_EPSON 0x00000002
jakowisp 3:1fcb46ab18df 41 #define PTP_VENDOR_AGILENT 0x00000003
jakowisp 3:1fcb46ab18df 42 #define PTP_VENDOR_POLAROID 0x00000004
jakowisp 3:1fcb46ab18df 43 #define PTP_VENDOR_AGFA_GEVAERT 0x00000005
jakowisp 3:1fcb46ab18df 44 #define PTP_VENDOR_MICROSOFT 0x00000006
jakowisp 3:1fcb46ab18df 45 #define PTP_VENDOR_EQUINOX 0x00000007
jakowisp 3:1fcb46ab18df 46 #define PTP_VENDOR_VIEWQUEST 0x00000008
jakowisp 3:1fcb46ab18df 47 #define PTP_VENDOR_STMICROELECTRONICS 0x00000009
jakowisp 3:1fcb46ab18df 48 #define PTP_VENDOR_NIKON 0x0000000A
jakowisp 3:1fcb46ab18df 49 #define PTP_VENDOR_CANON 0x0000000B
jakowisp 3:1fcb46ab18df 50 #define PTP_VENDOR_FOTONATION 0x0000000C
jakowisp 3:1fcb46ab18df 51 #define PTP_VENDOR_PENTAX 0x0000000D
jakowisp 3:1fcb46ab18df 52 #define PTP_VENDOR_FUJI 0x0000000E
jakowisp 3:1fcb46ab18df 53 #define PTP_VENDOR_SAMSUNG 0x0000001A
jakowisp 0:98cf19bcd828 54
jakowisp 0:98cf19bcd828 55 /* Operation Codes */
jakowisp 3:1fcb46ab18df 56 // PIMA 15740:2000 standard 10.3 Table 18
jakowisp 1:71c0e9dc153d 57 #define PIMA_OPERATION_CODE_Undefined 0x1000
jakowisp 1:71c0e9dc153d 58 #define PIMA_OPERATION_CODE_GetDeviceInfo 0x1001
jakowisp 1:71c0e9dc153d 59 #define PIMA_OPERATION_CODE_OpenSession 0x1002
jakowisp 1:71c0e9dc153d 60 #define PIMA_OPERATION_CODE_CloseSession 0x1003
jakowisp 1:71c0e9dc153d 61 #define PIMA_OPERATION_CODE_GetStorageIDs 0x1004
jakowisp 1:71c0e9dc153d 62 #define PIMA_OPERATION_CODE_GetStorageInfo 0x1005
jakowisp 1:71c0e9dc153d 63 #define PIMA_OPERATION_CODE_GetNumObjects 0x1006
jakowisp 1:71c0e9dc153d 64 #define PIMA_OPERATION_CODE_GetObjectHandles 0x1007
jakowisp 1:71c0e9dc153d 65 #define PIMA_OPERATION_CODE_GetObjectInfo 0x1008
jakowisp 1:71c0e9dc153d 66 #define PIMA_OPERATION_CODE_GetObject 0x1009
jakowisp 1:71c0e9dc153d 67 #define PIMA_OPERATION_CODE_GetThumb 0x100A
jakowisp 1:71c0e9dc153d 68 #define PIMA_OPERATION_CODE_DeleteObject 0x100B
jakowisp 1:71c0e9dc153d 69 #define PIMA_OPERATION_CODE_SendObjectInfo 0x100C
jakowisp 1:71c0e9dc153d 70 #define PIMA_OPERATION_CODE_SendObject 0x100D
jakowisp 1:71c0e9dc153d 71 #define PIMA_OPERATION_CODE_InitiateCapture 0x100E
jakowisp 1:71c0e9dc153d 72 #define PIMA_OPERATION_CODE_FormatStore 0x100F
jakowisp 1:71c0e9dc153d 73 #define PIMA_OPERATION_CODE_ResetDevice 0x1010
jakowisp 1:71c0e9dc153d 74 #define PIMA_OPERATION_CODE_SelfTest 0x1011
jakowisp 1:71c0e9dc153d 75 #define PIMA_OPERATION_CODE_SetObjectProtection 0x1012
jakowisp 1:71c0e9dc153d 76 #define PIMA_OPERATION_CODE_PowerDown 0x1013
jakowisp 1:71c0e9dc153d 77 #define PIMA_OPERATION_CODE_GetDevicePropDesc 0x1014
jakowisp 1:71c0e9dc153d 78 #define PIMA_OPERATION_CODE_GetDevicePropValue 0x1015
jakowisp 1:71c0e9dc153d 79 #define PIMA_OPERATION_CODE_SetDevicePropValue 0x1016
jakowisp 1:71c0e9dc153d 80 #define PIMA_OPERATION_CODE_ResetDevicePropValue 0x1017
jakowisp 1:71c0e9dc153d 81 #define PIMA_OPERATION_CODE_TerminateOpenCapture 0x1018
jakowisp 1:71c0e9dc153d 82 #define PIMA_OPERATION_CODE_MoveObject 0x1019
jakowisp 1:71c0e9dc153d 83 #define PIMA_OPERATION_CODE_CopyObject 0x101A
jakowisp 1:71c0e9dc153d 84 #define PIMA_OPERATION_CODE_GetPartialObject 0x101B
jakowisp 1:71c0e9dc153d 85 #define PIMA_OPERATION_CODE_InitiateOpenCapture 0x101C
jakowisp 0:98cf19bcd828 86
jakowisp 0:98cf19bcd828 87 /* Proprietary vendor extension operations mask */
jakowisp 3:1fcb46ab18df 88 // PIMA 15740:2000 standard 10.3 Table 18
jakowisp 1:71c0e9dc153d 89 #define PIMA_OPERATION_CODE_EXTENSION 0x9000
jakowisp 0:98cf19bcd828 90
jakowisp 0:98cf19bcd828 91 /* Response Codes */
jakowisp 3:1fcb46ab18df 92 // PIMA 15740:2000 standard 11.2 Table 20
jakowisp 3:1fcb46ab18df 93 #define PIMA_RETURN_CODE_Undefined 0x2000
jakowisp 3:1fcb46ab18df 94 #define PIMA_RETURN_CODE_OK 0x2001
jakowisp 3:1fcb46ab18df 95 #define PIMA_RETURN_CODE_GeneralError 0x2002
jakowisp 3:1fcb46ab18df 96 #define PIMA_RETURN_CODE_SessionNotOpen 0x2003
jakowisp 3:1fcb46ab18df 97 #define PIMA_RETURN_CODE_InvalidTransactionID 0x2004
jakowisp 3:1fcb46ab18df 98 #define PIMA_RETURN_CODE_OperationNotSupported 0x2005
jakowisp 3:1fcb46ab18df 99 #define PIMA_RETURN_CODE_ParameterNotSupported 0x2006
jakowisp 3:1fcb46ab18df 100 #define PIMA_RETURN_CODE_IncompleteTransfer 0x2007
jakowisp 3:1fcb46ab18df 101 #define PIMA_RETURN_CODE_InvalidStorageId 0x2008
jakowisp 3:1fcb46ab18df 102 #define PIMA_RETURN_CODE_InvalidObjectHandle 0x2009
jakowisp 3:1fcb46ab18df 103 #define PIMA_RETURN_CODE_DevicePropertyNotSupported 0x200A
jakowisp 3:1fcb46ab18df 104 #define PIMA_RETURN_CODE_InvalidObjectFormatCode 0x200B
jakowisp 3:1fcb46ab18df 105 #define PIMA_RETURN_CODE_StoreFull 0x200C
jakowisp 3:1fcb46ab18df 106 #define PIMA_RETURN_CODE_ObjectWriteProtected 0x200D
jakowisp 3:1fcb46ab18df 107 #define PIMA_RETURN_CODE_StoreReadOnly 0x200E
jakowisp 3:1fcb46ab18df 108 #define PIMA_RETURN_CODE_AccessDenied 0x200F
jakowisp 3:1fcb46ab18df 109 #define PIMA_RETURN_CODE_NoThumbnailPresent 0x2010
jakowisp 3:1fcb46ab18df 110 #define PIMA_RETURN_CODE_SelfTestFailed 0x2011
jakowisp 3:1fcb46ab18df 111 #define PIMA_RETURN_CODE_PartialDeletion 0x2012
jakowisp 3:1fcb46ab18df 112 #define PIMA_RETURN_CODE_StoreNotAvailable 0x2013
jakowisp 3:1fcb46ab18df 113 #define PIMA_RETURN_CODE_SpecificationByFormatUnsupported 0x2014
jakowisp 3:1fcb46ab18df 114 #define PIMA_RETURN_CODE_NoValidObjectInfo 0x2015
jakowisp 3:1fcb46ab18df 115 #define PIMA_RETURN_CODE_InvalidCodeFormat 0x2016
jakowisp 3:1fcb46ab18df 116 #define PIMA_RETURN_CODE_UnknownVendorCode 0x2017
jakowisp 3:1fcb46ab18df 117 #define PIMA_RETURN_CODE_CaptureAlreadyTerminated 0x2018
jakowisp 3:1fcb46ab18df 118 #define PIMA_RETURN_CODE_DeviceBusy 0x2019
jakowisp 3:1fcb46ab18df 119 #define PIMA_RETURN_CODE_InvalidParentObject 0x201A
jakowisp 3:1fcb46ab18df 120 #define PIMA_RETURN_CODE_InvalidDevicePropFormat 0x201B
jakowisp 3:1fcb46ab18df 121 #define PIMA_RETURN_CODE_InvalidDevicePropValue 0x201C
jakowisp 3:1fcb46ab18df 122 #define PIMA_RETURN_CODE_InvalidParameter 0x201D
jakowisp 3:1fcb46ab18df 123 #define PIMA_RETURN_CODE_SessionAlreadyOpened 0x201E
jakowisp 3:1fcb46ab18df 124 #define PIMA_RETURN_CODE_TransactionCanceled 0x201F
jakowisp 3:1fcb46ab18df 125 #define PIMA_RETURN_CODE_SpecificationOfDestinationUnsupported 0x2020
jakowisp 0:98cf19bcd828 126
jakowisp 0:98cf19bcd828 127 /* Proprietary vendor extension response code mask */
jakowisp 3:1fcb46ab18df 128 // PIMA 15740:2000 standard 11.2 Table 20
jakowisp 1:71c0e9dc153d 129 #define PIMA_RETURN_CODE_EXTENSION 0xA000
jakowisp 0:98cf19bcd828 130
jakowisp 3:1fcb46ab18df 131 /* PIMA Event Codes */
jakowisp 3:1fcb46ab18df 132 // PIMA 15740:2000 standard 12.4 Table 22
jakowisp 1:71c0e9dc153d 133 #define PIMA_EVENT_CODE_Undefined 0x4000
jakowisp 1:71c0e9dc153d 134 #define PIMA_EVENT_CODE_CancelTransaction 0x4001
jakowisp 1:71c0e9dc153d 135 #define PIMA_EVENT_CODE_ObjectAdded 0x4002
jakowisp 1:71c0e9dc153d 136 #define PIMA_EVENT_CODE_ObjectRemoved 0x4003
jakowisp 1:71c0e9dc153d 137 #define PIMA_EVENT_CODE_StoreAdded 0x4004
jakowisp 1:71c0e9dc153d 138 #define PIMA_EVENT_CODE_StoreRemoved 0x4005
jakowisp 1:71c0e9dc153d 139 #define PIMA_EVENT_CODE_DevicePropChanged 0x4006
jakowisp 1:71c0e9dc153d 140 #define PIMA_EVENT_CODE_ObjectInfoChanged 0x4007
jakowisp 1:71c0e9dc153d 141 #define PIMA_EVENT_CODE_DeviceInfoChanged 0x4008
jakowisp 1:71c0e9dc153d 142 #define PIMA_EVENT_CODE_RequestObjectTransfer 0x4009
jakowisp 1:71c0e9dc153d 143 #define PIMA_EVENT_CODE_StoreFull 0x400A
jakowisp 1:71c0e9dc153d 144 #define PIMA_EVENT_CODE_DeviceReset 0x400B
jakowisp 1:71c0e9dc153d 145 #define PIMA_EVENT_CODE_StorageInfoChanged 0x400C
jakowisp 1:71c0e9dc153d 146 #define PIMA_EVENT_CODE_CaptureComplete 0x400D
jakowisp 1:71c0e9dc153d 147 #define PIMA_EVENT_CODE_UnreportedStatus 0x400E
jakowisp 3:1fcb46ab18df 148 // PIMA 15740:2000 standard 12.4 Table 22
jakowisp 3:1fcb46ab18df 149 #define PIMA_EVENT_CODE_VENDOR_EXTENSION 0xC000
jakowisp 0:98cf19bcd828 150
jakowisp 0:98cf19bcd828 151
jakowisp 1:71c0e9dc153d 152 /* PIMA15740 Object Format Codes */
jakowisp 3:1fcb46ab18df 153 // PIMA 15740:2000 standard 6.2 Table 14
jakowisp 1:71c0e9dc153d 154 #define PIMA_OBJECT_FORMAT_CODE_Undefined 0x3000
jakowisp 3:1fcb46ab18df 155 #define PIMA_OBJECT_FORMAT_CODE_ASSOCIATION 0x3001
jakowisp 1:71c0e9dc153d 156 #define PIMA_OBJECT_FORMAT_CODE_Script 0x3002
jakowisp 1:71c0e9dc153d 157 #define PIMA_OBJECT_FORMAT_CODE_Executable 0x3003
jakowisp 1:71c0e9dc153d 158 #define PIMA_OBJECT_FORMAT_CODE_Text 0x3004
jakowisp 1:71c0e9dc153d 159 #define PIMA_OBJECT_FORMAT_CODE_HTML 0x3005
jakowisp 1:71c0e9dc153d 160 #define PIMA_OBJECT_FORMAT_CODE_DPOF 0x3006
jakowisp 1:71c0e9dc153d 161 #define PIMA_OBJECT_FORMAT_CODE_AIFF 0x3007
jakowisp 1:71c0e9dc153d 162 #define PIMA_OBJECT_FORMAT_CODE_WAV 0x3008
jakowisp 1:71c0e9dc153d 163 #define PIMA_OBJECT_FORMAT_CODE_MP3 0x3009
jakowisp 1:71c0e9dc153d 164 #define PIMA_OBJECT_FORMAT_CODE_AVI 0x300A
jakowisp 1:71c0e9dc153d 165 #define PIMA_OBJECT_FORMAT_CODE_MPEG 0x300B
jakowisp 1:71c0e9dc153d 166 #define PIMA_OBJECT_FORMAT_CODE_ASF 0x300C
jakowisp 0:98cf19bcd828 167 /* image formats */
jakowisp 1:71c0e9dc153d 168 #define PIMA_OBJECT_FORMAT_CODE_EXIF_JPEG 0x3801
jakowisp 1:71c0e9dc153d 169 #define PIMA_OBJECT_FORMAT_CODE_TIFF_EP 0x3802
jakowisp 1:71c0e9dc153d 170 #define PIMA_OBJECT_FORMAT_CODE_FlashPix 0x3803
jakowisp 1:71c0e9dc153d 171 #define PIMA_OBJECT_FORMAT_CODE_BMP 0x3804
jakowisp 1:71c0e9dc153d 172 #define PIMA_OBJECT_FORMAT_CODE_CIFF 0x3805
jakowisp 1:71c0e9dc153d 173 #define PIMA_OBJECT_FORMAT_CODE_Undefined_0x3806 0x3806
jakowisp 1:71c0e9dc153d 174 #define PIMA_OBJECT_FORMAT_CODE_GIF 0x3807
jakowisp 1:71c0e9dc153d 175 #define PIMA_OBJECT_FORMAT_CODE_JFIF 0x3808
jakowisp 1:71c0e9dc153d 176 #define PIMA_OBJECT_FORMAT_CODE_PCD 0x3809
jakowisp 1:71c0e9dc153d 177 #define PIMA_OBJECT_FORMAT_CODE_PICT 0x380A
jakowisp 1:71c0e9dc153d 178 #define PIMA_OBJECT_FORMAT_CODE_PNG 0x380B
jakowisp 1:71c0e9dc153d 179 #define PIMA_OBJECT_FORMAT_CODE_Undefined_0x380C 0x380C
jakowisp 1:71c0e9dc153d 180 #define PIMA_OBJECT_FORMAT_CODE_TIFF 0x380D
jakowisp 1:71c0e9dc153d 181 #define PIMA_OBJECT_FORMAT_CODE_TIFF_IT 0x380E
jakowisp 1:71c0e9dc153d 182 #define PIMA_OBJECT_FORMAT_CODE_JP2 0x380F
jakowisp 1:71c0e9dc153d 183 #define PIMA_OBJECT_FORMAT_CODE_JPX 0x3810
jakowisp 3:1fcb46ab18df 184 // PIMA 15740:2000 standard 6.2 Table 14
jakowisp 3:1fcb46ab18df 185 #define PIMA_OBJECT_FORMAT_CODE_VENDOR_EXTENSION 0xB000
jakowisp 0:98cf19bcd828 186
jakowisp 0:98cf19bcd828 187
jakowisp 3:1fcb46ab18df 188 /* PIMA ASSOCIATION Types */
jakowisp 3:1fcb46ab18df 189 // PIMA 15740:2000 standard 6.4.1 Table 15
jakowisp 3:1fcb46ab18df 190 #define PIMA_ASSOCIATION_TYPE_Undefined 0x0000
jakowisp 3:1fcb46ab18df 191 #define PIMA_ASSOCIATION_TYPE_GenericFolder 0x0001
jakowisp 3:1fcb46ab18df 192 #define PIMA_ASSOCIATION_TYPE_Album 0x0002
jakowisp 3:1fcb46ab18df 193 #define PIMA_ASSOCIATION_TYPE_TimeSequence 0x0003
jakowisp 3:1fcb46ab18df 194 #define PIMA_ASSOCIATION_TYPE_HorizontalPanoramic 0x0004
jakowisp 3:1fcb46ab18df 195 #define PIMA_ASSOCIATION_TYPE_VerticalPanoramic 0x0005
jakowisp 3:1fcb46ab18df 196 #define PIMA_ASSOCIATION_TYPE_2DPanoramic 0x0006
jakowisp 3:1fcb46ab18df 197 #define PIMA_ASSOCIATION_TYPE_AncillaryData 0x0007
jakowisp 3:1fcb46ab18df 198 // PIMA 15740:2000 standard 6.4.1 Table 15
jakowisp 3:1fcb46ab18df 199 #define PIMA_ASSOCIATION_TYPE_VENDOR_EXTENSION 0xF000
jakowisp 0:98cf19bcd828 200
jakowisp 3:1fcb46ab18df 201 /* PIMA Storage Types */
jakowisp 3:1fcb46ab18df 202 // PIMA 15740:2000 standard 5.5.3 Table 11
jakowisp 3:1fcb46ab18df 203 #define PIMA_STORAGE_TYPE_Undefined 0x0000
jakowisp 3:1fcb46ab18df 204 #define PIMA_STORAGE_TYPE_FixedROM 0x0001
jakowisp 3:1fcb46ab18df 205 #define PIMA_STORAGE_TYPE_RemovableROM 0x0002
jakowisp 3:1fcb46ab18df 206 #define PIMA_STORAGE_TYPE_FixedRAM 0x0003
jakowisp 3:1fcb46ab18df 207 #define PIMA_STORAGE_TYPE_RemovableRAM 0x0004
jakowisp 0:98cf19bcd828 208
jakowisp 3:1fcb46ab18df 209 /* PIMA FilesystemType Values */
jakowisp 3:1fcb46ab18df 210 // PIMA 15740:2000 standard 5.5.3 Table 12
jakowisp 3:1fcb46ab18df 211 #define PIMA_FILESYSTEM_TYPE_Undefined 0x0000
jakowisp 3:1fcb46ab18df 212 #define PIMA_FILESYSTEM_TYPE_GenericFlat 0x0001
jakowisp 3:1fcb46ab18df 213 #define PIMA_FILESYSTEM_TYPE_GenericHierarchical 0x0002
jakowisp 3:1fcb46ab18df 214 #define PIMA_FILESYSTEM_TYPE_DCF 0x0003
jakowisp 3:1fcb46ab18df 215 // PIMA 15740:2000 standard 5.5.3 Table 12
jakowisp 3:1fcb46ab18df 216 #define PIMA_VENDOR_Defined 0xF000
jakowisp 3:1fcb46ab18df 217
jakowisp 3:1fcb46ab18df 218 /* PIMA StorageInfo AccessCapability Values */
jakowisp 3:1fcb46ab18df 219 // PIMA 15740:2000 standard 5.5.3 Table 13
jakowisp 3:1fcb46ab18df 220 #define PIMA_ACCESS_CAPABILITY_ReadWrite 0x0000
jakowisp 3:1fcb46ab18df 221 #define PIMA_ACCESS_CAPABILITY_ReadOnl_without_Object_Deletion 0x0001
jakowisp 3:1fcb46ab18df 222 #define PIMA_ACCESS_CAPABILITY_ReadOnly_with_Object_Deletion 0x0002
jakowisp 0:98cf19bcd828 223
jakowisp 0:98cf19bcd828 224 /* DataType Codes */
jakowisp 3:1fcb46ab18df 225 // PIMA 15740:2000 standard 5.3 Table 3
jakowisp 3:1fcb46ab18df 226 #define PIMA_DATATYPE_CODE_UNDEF 0x0000
jakowisp 3:1fcb46ab18df 227 #define PIMA_DATATYPE_CODE_INT8 0x0001
jakowisp 3:1fcb46ab18df 228 #define PIMA_DATATYPE_CODE_UINT8 0x0002
jakowisp 3:1fcb46ab18df 229 #define PIMA_DATATYPE_CODE_INT16 0x0003
jakowisp 3:1fcb46ab18df 230 #define PIMA_DATATYPE_CODE_UINT16 0x0004
jakowisp 3:1fcb46ab18df 231 #define PIMA_DATATYPE_CODE_INT32 0x0005
jakowisp 3:1fcb46ab18df 232 #define PIMA_DATATYPE_CODE_UINT32 0x0006
jakowisp 3:1fcb46ab18df 233 #define PIMA_DATATYPE_CODE_INT64 0x0007
jakowisp 3:1fcb46ab18df 234 #define PIMA_DATATYPE_CODE_UINT64 0x0008
jakowisp 3:1fcb46ab18df 235 #define PIMA_DATATYPE_CODE_INT128 0x0009
jakowisp 3:1fcb46ab18df 236 #define PIMA_DATATYPE_CODE_UINT128 0x000A
jakowisp 3:1fcb46ab18df 237 #define PIMA_DATATYPE_CODE_AINT8 0x4001
jakowisp 3:1fcb46ab18df 238 #define PIMA_DATATYPE_CODE_AUINT8 0x4002
jakowisp 3:1fcb46ab18df 239 #define PIMA_DATATYPE_CODE_AINT16 0x4003
jakowisp 3:1fcb46ab18df 240 #define PIMA_DATATYPE_CODE_AUINT16 0x4004
jakowisp 3:1fcb46ab18df 241 #define PIMA_DATATYPE_CODE_AINT32 0x4005
jakowisp 3:1fcb46ab18df 242 #define PIMA_DATATYPE_CODE_AUINT32 0x4006
jakowisp 3:1fcb46ab18df 243 #define PIMA_DATATYPE_CODE_AINT64 0x4007
jakowisp 3:1fcb46ab18df 244 #define PIMA_DATATYPE_CODE_AUINT64 0x4008
jakowisp 3:1fcb46ab18df 245 #define PIMA_DATATYPE_CODE_AINT128 0x4009
jakowisp 3:1fcb46ab18df 246 #define PIMA_DATATYPE_CODE_AUINT128 0x400A
jakowisp 3:1fcb46ab18df 247 #define PIMA_DATATYPE_CODE_STR 0xFFFF
jakowisp 0:98cf19bcd828 248
jakowisp 0:98cf19bcd828 249 /* Device Properties Codes */
jakowisp 3:1fcb46ab18df 250 // PIMA 15740:2000 standard 13.3.5 Table 26
jakowisp 3:1fcb46ab18df 251 #define PIMA_DEVICE_PROPERTY_CODE_Undefined 0x5000
jakowisp 3:1fcb46ab18df 252 #define PIMA_DEVICE_PROPERTY_CODE_BatteryLevel 0x5001
jakowisp 3:1fcb46ab18df 253 #define PIMA_DEVICE_PROPERTY_CODE_FunctionalMode 0x5002
jakowisp 3:1fcb46ab18df 254 #define PIMA_DEVICE_PROPERTY_CODE_ImageSize 0x5003
jakowisp 3:1fcb46ab18df 255 #define PIMA_DEVICE_PROPERTY_CODE_CompressionSetting 0x5004
jakowisp 3:1fcb46ab18df 256 #define PIMA_DEVICE_PROPERTY_CODE_WhiteBalance 0x5005
jakowisp 3:1fcb46ab18df 257 #define PIMA_DEVICE_PROPERTY_CODE_RGBGain 0x5006
jakowisp 3:1fcb46ab18df 258 #define PIMA_DEVICE_PROPERTY_CODE_FNumber 0x5007
jakowisp 3:1fcb46ab18df 259 #define PIMA_DEVICE_PROPERTY_CODE_FocalLength 0x5008
jakowisp 3:1fcb46ab18df 260 #define PIMA_DEVICE_PROPERTY_CODE_FocusDistance 0x5009
jakowisp 3:1fcb46ab18df 261 #define PIMA_DEVICE_PROPERTY_CODE_FocusMode 0x500A
jakowisp 3:1fcb46ab18df 262 #define PIMA_DEVICE_PROPERTY_CODE_ExposureMeteringMode 0x500B
jakowisp 3:1fcb46ab18df 263 #define PIMA_DEVICE_PROPERTY_CODE_FlashMode 0x500C
jakowisp 3:1fcb46ab18df 264 #define PIMA_DEVICE_PROPERTY_CODE_ExposureTime 0x500D
jakowisp 3:1fcb46ab18df 265 #define PIMA_DEVICE_PROPERTY_CODE_ExposureProgramMode 0x500E
jakowisp 3:1fcb46ab18df 266 #define PIMA_DEVICE_PROPERTY_CODE_ExposureIndex 0x500F
jakowisp 3:1fcb46ab18df 267 #define PIMA_DEVICE_PROPERTY_CODE_ExposureBiasCompensation 0x5010
jakowisp 3:1fcb46ab18df 268 #define PIMA_DEVICE_PROPERTY_CODE_DateTime 0x5011
jakowisp 3:1fcb46ab18df 269 #define PIMA_DEVICE_PROPERTY_CODE_CaptureDelay 0x5012
jakowisp 3:1fcb46ab18df 270 #define PIMA_DEVICE_PROPERTY_CODE_StillCaptureMode 0x5013
jakowisp 3:1fcb46ab18df 271 #define PIMA_DEVICE_PROPERTY_CODE_Contrast 0x5014
jakowisp 3:1fcb46ab18df 272 #define PIMA_DEVICE_PROPERTY_CODE_Sharpness 0x5015
jakowisp 3:1fcb46ab18df 273 #define PIMA_DEVICE_PROPERTY_CODE_DigitalZoom 0x5016
jakowisp 3:1fcb46ab18df 274 #define PIMA_DEVICE_PROPERTY_CODE_EffectMode 0x5017
jakowisp 3:1fcb46ab18df 275 #define PIMA_DEVICE_PROPERTY_CODE_BurstNumber 0x5018
jakowisp 3:1fcb46ab18df 276 #define PIMA_DEVICE_PROPERTY_CODE_BurstInterval 0x5019
jakowisp 3:1fcb46ab18df 277 #define PIMA_DEVICE_PROPERTY_CODE_TimelapseNumber 0x501A
jakowisp 3:1fcb46ab18df 278 #define PIMA_DEVICE_PROPERTY_CODE_TimelapseInterval 0x501B
jakowisp 3:1fcb46ab18df 279 #define PIMA_DEVICE_PROPERTY_CODE_FocusMeteringMode 0x501C
jakowisp 3:1fcb46ab18df 280 #define PIMA_DEVICE_PROPERTY_CODE_UploadURL 0x501D
jakowisp 3:1fcb46ab18df 281 #define PIMA_DEVICE_PROPERTY_CODE_Artist 0x501E
jakowisp 3:1fcb46ab18df 282 #define PIMA_DEVICE_PROPERTY_CODE_CopyrightInfo 0x501F
jakowisp 0:98cf19bcd828 283
jakowisp 0:98cf19bcd828 284 /* Proprietary vendor extension device property mask */
jakowisp 3:1fcb46ab18df 285 // PIMA 15740:2000 standard 13.3.5 Table 26
jakowisp 3:1fcb46ab18df 286 #define PIMA_DEVICE_PROPERTY_CODE_EXTENSION 0xD000
jakowisp 0:98cf19bcd828 287
jakowisp 0:98cf19bcd828 288 /* Device Property Form Flag */
jakowisp 3:1fcb46ab18df 289 // PIMA 15740:2000 standard 13.3.3 Table 23
jakowisp 3:1fcb46ab18df 290 #define PIMA_DEVICE_PROPERTY_FORM_FLAG_None 0x00
jakowisp 3:1fcb46ab18df 291 #define PIMA_DEVICE_PROPERTY_FORM_FLAG_Range 0x01
jakowisp 3:1fcb46ab18df 292 #define PIMA_DEVICE_PROPERTY_FORM_FLAG_Enumeration 0x02
jakowisp 0:98cf19bcd828 293
jakowisp 0:98cf19bcd828 294 /* Device Property GetSet type */
jakowisp 3:1fcb46ab18df 295 // PIMA 15740:2000 standard 13.3.3 Table 23
jakowisp 3:1fcb46ab18df 296 #define PIMA_DEVICE_PROPERTY_GETSET_Get 0x00
jakowisp 3:1fcb46ab18df 297 #define PIMA_DEVICE_PROPERTY_GETSET_GetSet 0x01
jakowisp 0:98cf19bcd828 298
jakowisp 3:1fcb46ab18df 299 #endif //__PIMACONST_H__