/*
LUFA Library
Copyright (C) Dean Camera, 2010.
-
+
dean [at] fourwalledcubicle [dot] com
www.fourwalledcubicle.com
*/
/*
Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com)
- Permission to use, copy, modify, distribute, and sell this
+ Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
- without fee, provided that the above copyright notice appear in
+ without fee, provided that the above copyright notice appear in
all copies and that both that the copyright notice and this
- permission notice and warranty disclaimer appear in supporting
- documentation, and that the name of the author not be used in
- advertising or publicity pertaining to distribution of the
+ permission notice and warranty disclaimer appear in supporting
+ documentation, and that the name of the author not be used in
+ advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
The author disclaim all warranties with regard to this
#include "../../USB.h"
#include <string.h>
-
+
/* Enable C linkage for C++ Compilers: */
#if defined(__cplusplus)
extern "C" {
#if !defined(__INCLUDE_FROM_SI_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/StillImage.h instead.
#endif
-
+
/* Macros: */
/** Length in bytes of a given Unicode string's character length.
*
*
* \return Number of bytes of the given unicode string.
*/
- #define UNICODE_STRING_LENGTH(Chars) ((Chars) << 1)
-
+ #define UNICODE_STRING_LENGTH(Chars) ((Chars) << 1)
+
/** Used in the DataLength field of a PIMA container, to give the total container size in bytes for
* a command container.
*
* \param[in] Params Number of parameters which are to be sent in the Param field of the container.
*/
- #define PIMA_COMMAND_SIZE(Params) ((sizeof(SI_PIMA_Container_t) - 12) + \
- ((Params) * sizeof(uint32_t)))
+ #define PIMA_COMMAND_SIZE(Params) ((sizeof(SI_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 data container.
*
* \param[in] DataLen Length in bytes of the data in the container.
*/
- #define PIMA_DATA_SIZE(DataLen) ((sizeof(SI_PIMA_Container_t) - 12) + \
- (DataLen))
+ #define PIMA_DATA_SIZE(DataLen) ((sizeof(SI_PIMA_Container_t) - 12) + (DataLen))
/* Enums: */
/** Enum for the possible PIMA contains types. */
enum SI_PIMA_Container_Types_t
{
- CType_Undefined = 0, /**< Undefined container type. */
- CType_CommandBlock = 1, /**< Command Block container type. */
- CType_DataBlock = 2, /**< Data Block container type. */
- CType_ResponseBlock = 3, /**< Response container type. */
- CType_EventBlock = 4, /**< Event Block container type. */
- };
-
+ SI_PIMA_CONTAINER_Undefined = 0, /**< Undefined container type. */
+ SI_PIMA_CONTAINER_CommandBlock = 1, /**< Command Block container type. */
+ SI_PIMA_CONTAINER_DataBlock = 2, /**< Data Block container type. */
+ SI_PIMA_CONTAINER_ResponseBlock = 3, /**< Response container type. */
+ SI_PIMA_CONTAINER_EventBlock = 4, /**< Event Block container type. */
+ };
+
/* Enums: */
/** Enums for the possible status codes of a returned Response Block from an attached PIMA compliant Still Image device. */
enum SI_PIMA_ResponseCodes_t
{
- PIMA_RESPONSE_OK = 1, /**< Response code indicating no error in the issued command. */
- PIMA_RESPONSE_GeneralError = 2, /**< Response code indicating a general error while processing the
- * issued command.
- */
- PIMA_RESPONSE_SessionNotOpen = 3, /**< Response code indicating that the sent command requires an open
- * session before being issued.
- */
- PIMA_RESPONSE_InvalidTransaction = 4, /**< Response code indicating an invalid transaction occurred. */
- PIMA_RESPONSE_OperationNotSupported = 5, /**< Response code indicating that the issued command is not supported
- * by the attached device.
- */
- PIMA_RESPONSE_ParameterNotSupported = 6, /**< Response code indicating that one or more of the issued command's
- * parameters are not supported by the device.
- */
+ SI_PIMA_RESPONSE_OK = 1, /**< Response code indicating no error in the issued command. */
+ SI_PIMA_RESPONSE_GeneralError = 2, /**< Response code indicating a general error while processing the
+ * issued command.
+ */
+ SI_PIMA_RESPONSE_SessionNotOpen = 3, /**< Response code indicating that the sent command requires an open
+ * session before being issued.
+ */
+ SI_PIMA_RESPONSE_InvalidTransaction = 4, /**< Response code indicating an invalid transaction occurred. */
+ SI_PIMA_RESPONSE_OperationNotSupported = 5, /**< Response code indicating that the issued command is not supported
+ * by the attached device.
+ */
+ SI_PIMA_RESPONSE_ParameterNotSupported = 6, /**< Response code indicating that one or more of the issued command's
+ * parameters are not supported by the device.
+ */
};
-
+
/* Type Defines: */
/** \brief PIMA Still Image Device Command/Response Container.
*
uint32_t TransactionID; /**< Unique container ID to link blocks together. */
uint32_t Params[3]; /**< Block parameters to be issued along with the block code (command blocks only). */
} SI_PIMA_Container_t;
-
+
/* Disable C linkage for C++ Compilers: */
#if defined(__cplusplus)
}
#endif
-
+
#endif
/** @} */
+