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

Dependents:   class_project_main

Revision:
3:1fcb46ab18df
Parent:
1:71c0e9dc153d
diff -r 67753d738eb8 -r 1fcb46ab18df PIMA15740/PIMAconst.h
--- a/PIMA15740/PIMAconst.h	Fri Aug 23 20:02:44 2013 +0000
+++ b/PIMA15740/PIMAconst.h	Fri Aug 23 23:34:05 2013 +0000
@@ -1,25 +1,33 @@
-/* mbed USBHostPTP Library(PIMA15740 definitions)
- * Copyright (c) 2013 Dwayne Dilbeck
- * This software is distributed under the terms of the GNU Lesser General Public License
+/**
+*  @file PIMAconst.h
+*  @brief PIMA constants definitions
+*  @author Dwayne Dilbeck
+*  @date 8/23/2013
+* 
+* @par Copyright:
+*  Copyright (c) 2013 Dwayne Dilbeck
+* @par License:
+*  This software is distributed under the terms of the GNU Lesser General Public License
+*
+* mbed USBHostPTP Library(PIMA15740 Constants definition)
  *
  * Special thanks to the 'Circuits at Home', 
  * Reviewing thier code helped in understanding what needed to be done in my code for the mbed.
+ *
+ * @par Reference
  * Circuits At Home, LTD
  * Web      :  http://www.circuitsathome.com 
  * e-mail   :  support@circuitsathome.com
  */
  
 
-#ifndef __PTPCONST_H__
-#define __PTPCONST_H__
-
-#include <inttypes.h>
+#ifndef __PIMACONST_H__
+#define __PIMACONST_H__
 
 #define PIMA_CONTAINER_HEADER_LENGTH  0xc
 
-//#define PTP_USB_INT_PACKET_LEN  8
-
-/* PIMA container types */
+// PIMA container types
+// PIMA 15740:2000 standard Appendix D.7.1.1 
 #define PIMA_CONTAINER_UNDEFINED         0x0000
 #define PIMA_CONTAINER_COMMAND           0x0001
 #define PIMA_CONTAINER_DATA              0x0002
@@ -27,22 +35,25 @@
 #define PIMA_CONTAINER_EVENT             0x0004
 
 /* Vendor IDs */
-#define PIMA_VENDOR_EASTMAN_KODAK            0x00000001
-#define PIMA_VENDOR_SEIKO_EPSON              0x00000002
-#define PIMA_VENDOR_AGILENT                  0x00000003
-#define PIMA_VENDOR_POLAROID                 0x00000004
-#define PIMA_VENDOR_AGFA_GEVAERT             0x00000005
-#define PIMA_VENDOR_MICROSOFT                0x00000006
-#define PIMA_VENDOR_EQUINOX                  0x00000007
-#define PIMA_VENDOR_VIEWQUEST                0x00000008
-#define PIMA_VENDOR_STMICROELECTRONICS       0x00000009
-#define PIMA_VENDOR_NIKON                    0x0000000A
-#define PIMA_VENDOR_CANON                    0x0000000B
-#define PIMA_VENDOR_FOTONATION               0x0000000C
-#define PIMA_VENDOR_PENTAX                   0x0000000D
-#define PIMA_VENDOR_FUJI                     0x0000000E
+//http://www.imaging.org/ist/resources/standards/files/Final_PTP_Vendor_Extension_Registry.pdf
+#define PTP_VENDOR_EASTMAN_KODAK            0x00000001
+#define PTP_VENDOR_SEIKO_EPSON              0x00000002
+#define PTP_VENDOR_AGILENT                  0x00000003
+#define PTP_VENDOR_POLAROID                 0x00000004
+#define PTP_VENDOR_AGFA_GEVAERT             0x00000005
+#define PTP_VENDOR_MICROSOFT                0x00000006
+#define PTP_VENDOR_EQUINOX                  0x00000007
+#define PTP_VENDOR_VIEWQUEST                0x00000008
+#define PTP_VENDOR_STMICROELECTRONICS       0x00000009
+#define PTP_VENDOR_NIKON                    0x0000000A
+#define PTP_VENDOR_CANON                    0x0000000B
+#define PTP_VENDOR_FOTONATION               0x0000000C
+#define PTP_VENDOR_PENTAX                   0x0000000D
+#define PTP_VENDOR_FUJI                     0x0000000E
+#define PTP_VENDOR_SAMSUNG                  0x0000001A
 
 /* Operation Codes */
+// PIMA 15740:2000 standard 10.3 Table 18
 #define PIMA_OPERATION_CODE_Undefined                    0x1000
 #define PIMA_OPERATION_CODE_GetDeviceInfo                0x1001
 #define PIMA_OPERATION_CODE_OpenSession                  0x1002
@@ -74,49 +85,51 @@
 #define PIMA_OPERATION_CODE_InitiateOpenCapture          0x101C
 
 /* Proprietary vendor extension operations mask */
-#define PIMA_OPERATION_CODE_EXTENSION_MASK               0xF000
+// PIMA 15740:2000 standard 10.3 Table 18
 #define PIMA_OPERATION_CODE_EXTENSION                    0x9000
 
 /* Response Codes */
-#define PIMA_RETURN_CODE_Undefined                    0x2000
-#define PIMA_RETURN_CODE_OK                           0x2001
-#define PIMA_RETURN_CODE_GeneralError                 0x2002
-#define PIMA_RETURN_CODE_SessionNotOpen               0x2003
-#define PIMA_RETURN_CODE_InvalidTransactionID         0x2004
-#define PIMA_RETURN_CODE_OperationNotSupported        0x2005
-#define PIMA_RETURN_CODE_ParameterNotSupported        0x2006
-#define PIMA_RETURN_CODE_IncompleteTransfer           0x2007
-#define PIMA_RETURN_CODE_InvalidStorageId             0x2008
-#define PIMA_RETURN_CODE_InvalidObjectHandle          0x2009
-#define PIMA_RETURN_CODE_DevicePropertyNotSupported   0x200A
-#define PIMA_RETURN_CODE_InvalidObjectFormatCode      0x200B
-#define PIMA_RETURN_CODE_StoreFull                    0x200C
-#define PIMA_RETURN_CODE_ObjectWriteProtected         0x200D
-#define PIMA_RETURN_CODE_StoreReadOnly                0x200E
-#define PIMA_RETURN_CODE_AccessDenied                 0x200F
-#define PIMA_RETURN_CODE_NoThumbnailPresent           0x2010
-#define PIMA_RETURN_CODE_SelfTestFailed               0x2011
-#define PIMA_RETURN_CODE_PartialDeletion              0x2012
-#define PIMA_RETURN_CODE_StoreNotAvailable            0x2013
-#define PIMA_RETURN_CODE_SpecificationByFormatUnsupported         0x2014
-#define PIMA_RETURN_CODE_NoValidObjectInfo            0x2015
-#define PIMA_RETURN_CODE_InvalidCodeFormat            0x2016
-#define PIMA_RETURN_CODE_UnknownVendorCode            0x2017
-#define PIMA_RETURN_CODE_CaptureAlreadyTerminated     0x2018
-#define PIMA_RETURN_CODE_DeviceBusy                   0x2019
-#define PIMA_RETURN_CODE_InvalidParentObject          0x201A
-#define PIMA_RETURN_CODE_InvalidDevicePropFormat      0x201B
-#define PIMA_RETURN_CODE_InvalidDevicePropValue       0x201C
-#define PIMA_RETURN_CODE_InvalidParameter             0x201D
-#define PIMA_RETURN_CODE_SessionAlreadyOpened         0x201E
-#define PIMA_RETURN_CODE_TransactionCanceled          0x201F
-#define PIMA_RETURN_CODE_SpecificationOfDestinationUnsupported    0x2020
+// PIMA 15740:2000 standard 11.2 Table 20
+#define PIMA_RETURN_CODE_Undefined                              0x2000
+#define PIMA_RETURN_CODE_OK                                     0x2001
+#define PIMA_RETURN_CODE_GeneralError                           0x2002
+#define PIMA_RETURN_CODE_SessionNotOpen                         0x2003
+#define PIMA_RETURN_CODE_InvalidTransactionID                   0x2004
+#define PIMA_RETURN_CODE_OperationNotSupported                  0x2005
+#define PIMA_RETURN_CODE_ParameterNotSupported                  0x2006
+#define PIMA_RETURN_CODE_IncompleteTransfer                     0x2007
+#define PIMA_RETURN_CODE_InvalidStorageId                       0x2008
+#define PIMA_RETURN_CODE_InvalidObjectHandle                    0x2009
+#define PIMA_RETURN_CODE_DevicePropertyNotSupported             0x200A
+#define PIMA_RETURN_CODE_InvalidObjectFormatCode                0x200B
+#define PIMA_RETURN_CODE_StoreFull                              0x200C
+#define PIMA_RETURN_CODE_ObjectWriteProtected                   0x200D
+#define PIMA_RETURN_CODE_StoreReadOnly                          0x200E
+#define PIMA_RETURN_CODE_AccessDenied                           0x200F
+#define PIMA_RETURN_CODE_NoThumbnailPresent                     0x2010
+#define PIMA_RETURN_CODE_SelfTestFailed                         0x2011
+#define PIMA_RETURN_CODE_PartialDeletion                        0x2012
+#define PIMA_RETURN_CODE_StoreNotAvailable                      0x2013
+#define PIMA_RETURN_CODE_SpecificationByFormatUnsupported       0x2014
+#define PIMA_RETURN_CODE_NoValidObjectInfo                      0x2015
+#define PIMA_RETURN_CODE_InvalidCodeFormat                      0x2016
+#define PIMA_RETURN_CODE_UnknownVendorCode                      0x2017
+#define PIMA_RETURN_CODE_CaptureAlreadyTerminated               0x2018
+#define PIMA_RETURN_CODE_DeviceBusy                             0x2019
+#define PIMA_RETURN_CODE_InvalidParentObject                    0x201A
+#define PIMA_RETURN_CODE_InvalidDevicePropFormat                0x201B
+#define PIMA_RETURN_CODE_InvalidDevicePropValue                 0x201C
+#define PIMA_RETURN_CODE_InvalidParameter                       0x201D
+#define PIMA_RETURN_CODE_SessionAlreadyOpened                   0x201E
+#define PIMA_RETURN_CODE_TransactionCanceled                    0x201F
+#define PIMA_RETURN_CODE_SpecificationOfDestinationUnsupported  0x2020
 
 /* Proprietary vendor extension response code mask */
-#define PIMA_RETURN_CODE_EXTENSION_MASK               0xF000
+// PIMA 15740:2000 standard 11.2 Table 20
 #define PIMA_RETURN_CODE_EXTENSION                    0xA000
 
-/* PTP Event Codes */
+/* PIMA Event Codes */
+// PIMA 15740:2000 standard 12.4  Table 22
 #define PIMA_EVENT_CODE_Undefined                    0x4000
 #define PIMA_EVENT_CODE_CancelTransaction            0x4001
 #define PIMA_EVENT_CODE_ObjectAdded                  0x4002
@@ -132,16 +145,14 @@
 #define PIMA_EVENT_CODE_StorageInfoChanged           0x400C
 #define PIMA_EVENT_CODE_CaptureComplete              0x400D
 #define PIMA_EVENT_CODE_UnreportedStatus             0x400E
-
-#define PTP_HANDLER_SPECIAL                 0xffffffff
-#define PTP_HANDLER_ROOT                    0x00000000
+// PIMA 15740:2000 standard 12.4 Table 22
+#define PIMA_EVENT_CODE_VENDOR_EXTENSION             0xC000
 
 
 /* PIMA15740 Object Format Codes */
-
-/* ancillary formats */
+// PIMA 15740:2000 standard 6.2 Table 14
 #define PIMA_OBJECT_FORMAT_CODE_Undefined                   0x3000
-#define PIMA_OBJECT_FORMAT_CODE_Association                 0x3001
+#define PIMA_OBJECT_FORMAT_CODE_ASSOCIATION                 0x3001
 #define PIMA_OBJECT_FORMAT_CODE_Script                      0x3002
 #define PIMA_OBJECT_FORMAT_CODE_Executable                  0x3003
 #define PIMA_OBJECT_FORMAT_CODE_Text                        0x3004
@@ -153,8 +164,6 @@
 #define PIMA_OBJECT_FORMAT_CODE_AVI                         0x300A
 #define PIMA_OBJECT_FORMAT_CODE_MPEG                        0x300B
 #define PIMA_OBJECT_FORMAT_CODE_ASF                         0x300C
-#define PIMA_OBJECT_FORMAT_CODE_QT                          0x300D /* guessing */
-
 /* image formats */
 #define PIMA_OBJECT_FORMAT_CODE_EXIF_JPEG                   0x3801
 #define PIMA_OBJECT_FORMAT_CODE_TIFF_EP                     0x3802
@@ -172,105 +181,119 @@
 #define PIMA_OBJECT_FORMAT_CODE_TIFF_IT                     0x380E
 #define PIMA_OBJECT_FORMAT_CODE_JP2                         0x380F
 #define PIMA_OBJECT_FORMAT_CODE_JPX                         0x3810
-
-/* PTP Association Types */
-#define PTP_AT_Undefined                    0x0000
-#define PTP_AT_GenericFolder                0x0001
-#define PTP_AT_Album                        0x0002
-#define PTP_AT_TimeSequence                 0x0003
-#define PTP_AT_HorizontalPanoramic          0x0004
-#define PTP_AT_VerticalPanoramic            0x0005
-#define PTP_AT_2DPanoramic                  0x0006
-#define PTP_AT_AncillaryData                0x0007
+// PIMA 15740:2000 standard 6.2 Table 14
+#define PIMA_OBJECT_FORMAT_CODE_VENDOR_EXTENSION            0xB000
 
 
-/* PTP Storage Types */
-#define PTP_ST_Undefined                    0x0000
-#define PTP_ST_FixedROM                     0x0001
-#define PTP_ST_RemovableROM                 0x0002
-#define PTP_ST_FixedRAM                     0x0003
-#define PTP_ST_RemovableRAM                 0x0004
+/* PIMA ASSOCIATION Types */
+// PIMA 15740:2000 standard 6.4.1 Table 15
+#define PIMA_ASSOCIATION_TYPE_Undefined                    0x0000
+#define PIMA_ASSOCIATION_TYPE_GenericFolder                0x0001
+#define PIMA_ASSOCIATION_TYPE_Album                        0x0002
+#define PIMA_ASSOCIATION_TYPE_TimeSequence                 0x0003
+#define PIMA_ASSOCIATION_TYPE_HorizontalPanoramic          0x0004
+#define PIMA_ASSOCIATION_TYPE_VerticalPanoramic            0x0005
+#define PIMA_ASSOCIATION_TYPE_2DPanoramic                  0x0006
+#define PIMA_ASSOCIATION_TYPE_AncillaryData                0x0007
+// PIMA 15740:2000 standard 6.4.1 Table 15
+#define PIMA_ASSOCIATION_TYPE_VENDOR_EXTENSION            0xF000
 
-/* PTP FilesystemType Values */
-#define PTP_FST_Undefined                   0x0000
-#define PTP_FST_GenericFlat                 0x0001
-#define PTP_FST_GenericHierarchical         0x0002
-#define PTP_FST_DCF                         0x0003
+/* PIMA Storage Types */
+// PIMA 15740:2000 standard 5.5.3 Table 11 
+#define PIMA_STORAGE_TYPE_Undefined                    0x0000
+#define PIMA_STORAGE_TYPE_FixedROM                     0x0001
+#define PIMA_STORAGE_TYPE_RemovableROM                 0x0002
+#define PIMA_STORAGE_TYPE_FixedRAM                     0x0003
+#define PIMA_STORAGE_TYPE_RemovableRAM                 0x0004
 
-/* PTP StorageInfo AccessCapability Values */
-#define PTP_AC_ReadWrite                        0x0000
-#define PTP_AC_ReadOnly                         0x0001
-#define PTP_AC_ReadOnly_with_Object_Deletion    0x0002
+/* PIMA FilesystemType Values */
+// PIMA 15740:2000 standard 5.5.3 Table 12
+#define PIMA_FILESYSTEM_TYPE_Undefined                   0x0000
+#define PIMA_FILESYSTEM_TYPE_GenericFlat                 0x0001
+#define PIMA_FILESYSTEM_TYPE_GenericHierarchical         0x0002
+#define PIMA_FILESYSTEM_TYPE_DCF                         0x0003
+// PIMA 15740:2000 standard 5.5.3 Table 12
+#define PIMA_VENDOR_Defined                              0xF000
+
+/* PIMA StorageInfo AccessCapability Values */
+// PIMA 15740:2000 standard 5.5.3 Table 13
+#define PIMA_ACCESS_CAPABILITY_ReadWrite                        0x0000
+#define PIMA_ACCESS_CAPABILITY_ReadOnl_without_Object_Deletion  0x0001
+#define PIMA_ACCESS_CAPABILITY_ReadOnly_with_Object_Deletion    0x0002
 
 /* DataType Codes */
-#define PTP_DTC_UNDEF                       0x0000
-#define PTP_DTC_INT8                        0x0001
-#define PTP_DTC_UINT8                       0x0002
-#define PTP_DTC_INT16                       0x0003
-#define PTP_DTC_UINT16                      0x0004
-#define PTP_DTC_INT32                       0x0005
-#define PTP_DTC_UINT32                      0x0006
-#define PTP_DTC_INT64                       0x0007
-#define PTP_DTC_UINT64                      0x0008
-#define PTP_DTC_INT128                      0x0009
-#define PTP_DTC_UINT128                     0x000A
-#define PTP_DTC_AINT8                       0x4001
-#define PTP_DTC_AUINT8                      0x4002
-#define PTP_DTC_AINT16                      0x4003
-#define PTP_DTC_AUINT16                     0x4004
-#define PTP_DTC_AINT32                      0x4005
-#define PTP_DTC_AUINT32                     0x4006
-#define PTP_DTC_AINT64                      0x4007
-#define PTP_DTC_AUINT64                     0x4008
-#define PTP_DTC_AINT128                     0x4009
-#define PTP_DTC_AUINT128                    0x400A
-#define PTP_DTC_STR                         0xFFFF
+// PIMA 15740:2000 standard 5.3 Table 3
+#define PIMA_DATATYPE_CODE_UNDEF                       0x0000
+#define PIMA_DATATYPE_CODE_INT8                        0x0001
+#define PIMA_DATATYPE_CODE_UINT8                       0x0002
+#define PIMA_DATATYPE_CODE_INT16                       0x0003
+#define PIMA_DATATYPE_CODE_UINT16                      0x0004
+#define PIMA_DATATYPE_CODE_INT32                       0x0005
+#define PIMA_DATATYPE_CODE_UINT32                      0x0006
+#define PIMA_DATATYPE_CODE_INT64                       0x0007
+#define PIMA_DATATYPE_CODE_UINT64                      0x0008
+#define PIMA_DATATYPE_CODE_INT128                      0x0009
+#define PIMA_DATATYPE_CODE_UINT128                     0x000A
+#define PIMA_DATATYPE_CODE_AINT8                       0x4001
+#define PIMA_DATATYPE_CODE_AUINT8                      0x4002
+#define PIMA_DATATYPE_CODE_AINT16                      0x4003
+#define PIMA_DATATYPE_CODE_AUINT16                     0x4004
+#define PIMA_DATATYPE_CODE_AINT32                      0x4005
+#define PIMA_DATATYPE_CODE_AUINT32                     0x4006
+#define PIMA_DATATYPE_CODE_AINT64                      0x4007
+#define PIMA_DATATYPE_CODE_AUINT64                     0x4008
+#define PIMA_DATATYPE_CODE_AINT128                     0x4009
+#define PIMA_DATATYPE_CODE_AUINT128                    0x400A
+#define PIMA_DATATYPE_CODE_STR                         0xFFFF
 
 /* Device Properties Codes */
-#define PTP_DPC_Undefined                   0x5000
-#define PTP_DPC_BatteryLevel                0x5001
-#define PTP_DPC_FunctionalMode              0x5002
-#define PTP_DPC_ImageSize                   0x5003
-#define PTP_DPC_CompressionSetting          0x5004
-#define PTP_DPC_WhiteBalance                0x5005
-#define PTP_DPC_RGBGain                     0x5006
-#define PTP_DPC_FNumber                     0x5007
-#define PTP_DPC_FocalLength                 0x5008
-#define PTP_DPC_FocusDistance               0x5009
-#define PTP_DPC_FocusMode                   0x500A
-#define PTP_DPC_ExposureMeteringMode        0x500B
-#define PTP_DPC_FlashMode                   0x500C
-#define PTP_DPC_ExposureTime                0x500D
-#define PTP_DPC_ExposureProgramMode         0x500E
-#define PTP_DPC_ExposureIndex               0x500F
-#define PTP_DPC_ExposureBiasCompensation    0x5010
-#define PTP_DPC_DateTime                    0x5011
-#define PTP_DPC_CaptureDelay                0x5012
-#define PTP_DPC_StillCaptureMode            0x5013
-#define PTP_DPC_Contrast                    0x5014
-#define PTP_DPC_Sharpness                   0x5015
-#define PTP_DPC_DigitalZoom                 0x5016
-#define PTP_DPC_EffectMode                  0x5017
-#define PTP_DPC_BurstNumber                 0x5018
-#define PTP_DPC_BurstInterval               0x5019
-#define PTP_DPC_TimelapseNumber             0x501A
-#define PTP_DPC_TimelapseInterval           0x501B
-#define PTP_DPC_FocusMeteringMode           0x501C
-#define PTP_DPC_UploadURL                   0x501D
-#define PTP_DPC_Artist                      0x501E
-#define PTP_DPC_CopyrightInfo               0x501F
+// PIMA 15740:2000 standard 13.3.5 Table 26
+#define PIMA_DEVICE_PROPERTY_CODE_Undefined                   0x5000
+#define PIMA_DEVICE_PROPERTY_CODE_BatteryLevel                0x5001
+#define PIMA_DEVICE_PROPERTY_CODE_FunctionalMode              0x5002
+#define PIMA_DEVICE_PROPERTY_CODE_ImageSize                   0x5003
+#define PIMA_DEVICE_PROPERTY_CODE_CompressionSetting          0x5004
+#define PIMA_DEVICE_PROPERTY_CODE_WhiteBalance                0x5005
+#define PIMA_DEVICE_PROPERTY_CODE_RGBGain                     0x5006
+#define PIMA_DEVICE_PROPERTY_CODE_FNumber                     0x5007
+#define PIMA_DEVICE_PROPERTY_CODE_FocalLength                 0x5008
+#define PIMA_DEVICE_PROPERTY_CODE_FocusDistance               0x5009
+#define PIMA_DEVICE_PROPERTY_CODE_FocusMode                   0x500A
+#define PIMA_DEVICE_PROPERTY_CODE_ExposureMeteringMode        0x500B
+#define PIMA_DEVICE_PROPERTY_CODE_FlashMode                   0x500C
+#define PIMA_DEVICE_PROPERTY_CODE_ExposureTime                0x500D
+#define PIMA_DEVICE_PROPERTY_CODE_ExposureProgramMode         0x500E
+#define PIMA_DEVICE_PROPERTY_CODE_ExposureIndex               0x500F
+#define PIMA_DEVICE_PROPERTY_CODE_ExposureBiasCompensation    0x5010
+#define PIMA_DEVICE_PROPERTY_CODE_DateTime                    0x5011
+#define PIMA_DEVICE_PROPERTY_CODE_CaptureDelay                0x5012
+#define PIMA_DEVICE_PROPERTY_CODE_StillCaptureMode            0x5013
+#define PIMA_DEVICE_PROPERTY_CODE_Contrast                    0x5014
+#define PIMA_DEVICE_PROPERTY_CODE_Sharpness                   0x5015
+#define PIMA_DEVICE_PROPERTY_CODE_DigitalZoom                 0x5016
+#define PIMA_DEVICE_PROPERTY_CODE_EffectMode                  0x5017
+#define PIMA_DEVICE_PROPERTY_CODE_BurstNumber                 0x5018
+#define PIMA_DEVICE_PROPERTY_CODE_BurstInterval               0x5019
+#define PIMA_DEVICE_PROPERTY_CODE_TimelapseNumber             0x501A
+#define PIMA_DEVICE_PROPERTY_CODE_TimelapseInterval           0x501B
+#define PIMA_DEVICE_PROPERTY_CODE_FocusMeteringMode           0x501C
+#define PIMA_DEVICE_PROPERTY_CODE_UploadURL                   0x501D
+#define PIMA_DEVICE_PROPERTY_CODE_Artist                      0x501E
+#define PIMA_DEVICE_PROPERTY_CODE_CopyrightInfo               0x501F
 
 /* Proprietary vendor extension device property mask */
-#define PTP_DPC_EXTENSION_MASK              0xF000
-#define PTP_DPC_EXTENSION                   0xD000
+// PIMA 15740:2000 standard 13.3.5 Table 26
+#define PIMA_DEVICE_PROPERTY_CODE_EXTENSION                   0xD000
 
 /* Device Property Form Flag */
-#define PTP_DPFF_None                       0x00
-#define PTP_DPFF_Range                      0x01
-#define PTP_DPFF_Enumeration                0x02
+// PIMA 15740:2000 standard 13.3.3 Table 23
+#define PIMA_DEVICE_PROPERTY_FORM_FLAG_None                       0x00
+#define PIMA_DEVICE_PROPERTY_FORM_FLAG_Range                      0x01
+#define PIMA_DEVICE_PROPERTY_FORM_FLAG_Enumeration                0x02
 
 /* Device Property GetSet type */
-#define PTP_DPGS_Get                        0x00
-#define PTP_DPGS_GetSet                     0x01
+// PIMA 15740:2000 standard 13.3.3 Table 23
+#define PIMA_DEVICE_PROPERTY_GETSET_Get                        0x00
+#define PIMA_DEVICE_PROPERTY_GETSET_GetSet                     0x01
 
-#endif //__PTPCONST_H__ 
+#endif //__PIMACONST_H__