Documentation improvements - put driver example code into its own section, fix incorr...
[pub/USBasp.git] / Demos / Host / LowLevel / StillImageHost / Lib / StillImageCommands.h
index f2bb189..d73a42f 100644 (file)
@@ -1,21 +1,21 @@
 /*
              LUFA Library
      Copyright (C) Dean Camera, 2010.
-              
+
   dean [at] fourwalledcubicle [dot] com
-      www.fourwalledcubicle.com
+           www.lufa-lib.org
 */
 
 /*
   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
  *
  *  Header file for StillImageCommands.c.
  */
+
 #ifndef _STILL_IMAGE_COMMANDS_H_
 #define _STILL_IMAGE_COMMANDS_H_
 
        /* Includes: */
                #include <LUFA/Drivers/USB/USB.h>
-               
+
                #include "PIMACodes.h"
                #include "../StillImageHost.h"
 
-       /* Macros: */           
-               /** Length in bytes of a given Unicode string's character length.
-                *
-                *  \param[in] chars  Total number of Unicode characters in the string
-                */
-               #define UNICODE_STRING_LENGTH(chars)   ((chars) << 1)
-
+       /* Macros: */
                /** Timeout period between the issuing of a command to a device, and the reception of the first packet. */
                #define COMMAND_DATA_TIMEOUT_MS        10000
-               
-               /** 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(PIMA_SendBlock) - sizeof(PIMA_SendBlock.Params)) + \
-                                                       ((params) * sizeof(PIMA_SendBlock.Params[0])))
 
-               /** 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(PIMA_SendBlock) - sizeof(PIMA_SendBlock.Params)) + datalen)
-
-       /* Type Defines: */
-               /** Type define for a PIMA container, use to send commands and receive responses to and from an
-                *  attached Still Image device.
-                */
-               typedef struct
-               {
-                       uint32_t DataLength; /**< Length of the container and data, in bytes */
-                       uint16_t Type; /**< Container type, a value from the PIMA_Container_Types_t enum */
-                       uint16_t Code; /**< Command, event or response code of the 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) */
-               } PIMA_Container_t;
-       
-       /* Enums: */
-               /** Enum for the possible PIMA contains types. */
-               enum 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 */
-               };
-       
        /* External Variables: */
                extern PIMA_Container_t PIMA_SendBlock;
                extern PIMA_Container_t PIMA_ReceivedBlock;
                extern PIMA_Container_t PIMA_EventBlock;
-       
+
        /* Function Prototypes: */
                void    SImage_SendBlockHeader(void);
                uint8_t SImage_ReceiveBlockHeader(void);
                bool    SImage_IsEventReceived(void);
 
 #endif
+