| LPCOpen Platform v1.03 LPCOpen Platform for NXP LPC Microcontrollers

- Main Page
- Modules
- Data Structures
- Files
- Related Pages

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations
Common Class Definitions
Still Image Class Driver

## Detailed Description

# Module Description

Constants, Types and Enum definitions that are common to both Device and Host modes for the USB Still Image Class.

## Data Structures
struct | PIMA_Container_t
| PIMA Still Image Device Command/Response Container. More...

## Macros
#define | UNICODE_STRING_LENGTH(Chars) ((Chars) << 1)
#define | PIMA_COMMAND_SIZE(Params) ((sizeof(PIMA_Container_t) - 12) + ((Params) * sizeof(uint32_t)))
#define | PIMA_DATA_SIZE(DataLen) ((sizeof(PIMA_Container_t) - 12) + (DataLen))

## Enumerations
enum | PIMA_Container_Types_t { PIMA_CONTAINER_Undefined = 0, PIMA_CONTAINER_CommandBlock = 1, PIMA_CONTAINER_DataBlock = 2, PIMA_CONTAINER_ResponseBlock = 3, PIMA_CONTAINER_EventBlock = 4 }
enum | SI_Descriptor_ClassSubclassProtocol_t { SI_CSCP_StillImageClass = 0x06, SI_CSCP_StillImageSubclass = 0x01, SI_CSCP_BulkOnlyProtocol = 0x01 }
enum | PIMA_ResponseCodes_t { PIMA_RESPONSE_OK = 1, PIMA_RESPONSE_GeneralError = 2, PIMA_RESPONSE_SessionNotOpen = 3, PIMA_RESPONSE_InvalidTransaction = 4, PIMA_RESPONSE_OperationNotSupported = 5, PIMA_RESPONSE_ParameterNotSupported = 6 }

## Macro Definition Documentation

#define PIMA_COMMAND_SIZE | ( |  | Params | ) | ((sizeof(PIMA_Container_t) - 12) + ((Params) * sizeof(uint32_t)))

Used in the DataLength field of a PIMA container, to give the total container size in bytes for a command container.

Parameters

  Params | Number of parameters which are to be sent in the `Param` field of the container.

Definition at line 73 of file StillImageClassCommon.h.

#define PIMA_DATA_SIZE | ( |  | DataLen | ) | ((sizeof(PIMA_Container_t) - 12) + (DataLen))

Used in the DataLength field of a PIMA container, to give the total container size in bytes for a data container.

Parameters

  DataLen | Length in bytes of the data in the container.

Definition at line 80 of file StillImageClassCommon.h.

#define UNICODE_STRING_LENGTH | ( |  | Chars | ) | ((Chars) << 1)

Length in bytes of a given Unicode string's character length.

Parameters

  Chars | Total number of Unicode characters in the string.

Returns
  Number of bytes of the given unicode string.

Definition at line 66 of file StillImageClassCommon.h.

## Enumeration Type Documentation

enum PIMA_Container_Types_t

Enum for the possible PIMA contains types.

Enumerator:

  PIMA_CONTAINER_Undefined | Undefined container type.
  PIMA_CONTAINER_CommandBlock | Command Block container type.
  PIMA_CONTAINER_DataBlock | Data Block container type.
  PIMA_CONTAINER_ResponseBlock | Response container type.
  PIMA_CONTAINER_EventBlock | Event Block container type.

Definition at line 84 of file StillImageClassCommon.h.

enum PIMA_ResponseCodes_t

Enums for the possible status codes of a returned Response Block from an attached PIMA compliant Still Image device.

Enumerator:

  PIMA_RESPONSE_OK | Response code indicating no error in the issued command.
  PIMA_RESPONSE_GeneralError | Response code indicating a general error while processing the issued command.
  PIMA_RESPONSE_SessionNotOpen | Response code indicating that the sent command requires an open session before being issued.
  PIMA_RESPONSE_InvalidTransaction | Response code indicating an invalid transaction occurred.
  PIMA_RESPONSE_OperationNotSupported | Response code indicating that the issued command is not supported by the attached device.
  PIMA_RESPONSE_ParameterNotSupported | Response code indicating that one or more of the issued command's parameters are not supported by the device.

Definition at line 111 of file StillImageClassCommon.h.

enum SI_Descriptor_ClassSubclassProtocol_t

Enum for possible Class, Subclass and Protocol values of device and interface descriptors relating to the Still Image device class.

Enumerator:

  SI_CSCP_StillImageClass | Descriptor Class value indicating that the device or interface belongs to the Still Image class.
  SI_CSCP_StillImageSubclass | Descriptor Subclass value indicating that the device or interface belongs to the Still Image subclass.
  SI_CSCP_BulkOnlyProtocol | Descriptor Protocol value indicating that the device or interface belongs to the Bulk Only Transport protocol of the Still Image class.

Definition at line 97 of file StillImageClassCommon.h.