Commit d49cc0f7 authored by Dean Camera's avatar Dean Camera

Add more include protection macros to give the user warnings when they try to...

Add more include protection macros to give the user warnings when they try to manually include private driver header files, instead of the public driver headers.
parent 3a2c1db6
......@@ -636,8 +636,7 @@ EXCLUDE_PATTERNS =
# wildcard * is used, a substring. Examples: ANamespace, AClass,
# AClass::ANamespace, ANamespace::*Test
EXCLUDE_SYMBOLS = __* \
INCLUDE_FROM_*
EXCLUDE_SYMBOLS = __*
# The EXAMPLE_PATH tag can be used to specify one or more files or
# directories that contain example code fragments that are included (see
......
......@@ -54,7 +54,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_BUTTONS_H)
#if !defined(__INCLUDE_FROM_BUTTONS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Buttons.h instead.
#endif
......
......@@ -46,7 +46,7 @@
// TODO: Add any required includes here
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_DATAFLASH_H)
#if !defined(__INCLUDE_FROM_DATAFLASH_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Dataflash.h instead.
#endif
......
......@@ -54,7 +54,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_JOYSTICK_H)
#if !defined(__INCLUDE_FROM_JOYSTICK_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Joystick.h instead.
#endif
......
......@@ -53,7 +53,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -62,7 +62,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_BUTTONS_H)
#if !defined(__INCLUDE_FROM_BUTTONS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Buttons.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -64,7 +64,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_BUTTONS_H)
#if !defined(__INCLUDE_FROM_BUTTONS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Buttons.h instead.
#endif
......
......@@ -63,7 +63,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_JOYSTICK_H)
#if !defined(__INCLUDE_FROM_JOYSTICK_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Joystick.h instead.
#endif
......
......@@ -63,7 +63,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -63,6 +63,7 @@
/* Macros: */
#if !defined(__DOXYGEN__)
#define __INCLUDE_FROM_BUTTONS_H
#define INCLUDE_FROM_BUTTONS_H
#endif
......
......@@ -62,6 +62,7 @@
/* Macros: */
#if !defined(__DOXYGEN__)
#define __INCLUDE_FROM_DATAFLASH_H
#define INCLUDE_FROM_DATAFLASH_H
#endif
......
......@@ -68,7 +68,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_BUTTONS_H)
#if !defined(__INCLUDE_FROM_BUTTONS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Buttons.h instead.
#endif
......
......@@ -54,7 +54,7 @@
#include "AT45DB321C.h"
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_DATAFLASH_H)
#if !defined(__INCLUDE_FROM_DATAFLASH_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Dataflash.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_JOYSTICK_H)
#if !defined(__INCLUDE_FROM_JOYSTICK_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Joystick.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -62,6 +62,7 @@
/* Macros: */
#if !defined(__DOXYGEN__)
#define __INCLUDE_FROM_JOYSTICK_H
#define INCLUDE_FROM_JOYSTICK_H
#endif
......
......@@ -70,6 +70,7 @@
/* Macros: */
#if !defined(__DOXYGEN__)
#define __INCLUDE_FROM_LEDS_H
#define INCLUDE_FROM_LEDS_H
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -68,7 +68,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_BUTTONS_H)
#if !defined(__INCLUDE_FROM_BUTTONS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Buttons.h instead.
#endif
......
......@@ -54,7 +54,7 @@
#include "AT45DB321C.h"
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_DATAFLASH_H)
#if !defined(__INCLUDE_FROM_DATAFLASH_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Dataflash.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_JOYSTICK_H)
#if !defined(__INCLUDE_FROM_JOYSTICK_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Joystick.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -68,7 +68,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_BUTTONS_H)
#if !defined(__INCLUDE_FROM_BUTTONS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Buttons.h instead.
#endif
......
......@@ -54,7 +54,7 @@
#include "AT45DB642D.h"
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_DATAFLASH_H)
#if !defined(__INCLUDE_FROM_DATAFLASH_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Dataflash.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_JOYSTICK_H)
#if !defined(__INCLUDE_FROM_JOYSTICK_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Joystick.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -52,11 +52,6 @@
#ifndef __TEMPERATURE_H__
#define __TEMPERATURE_H__
/* Macros: */
#if !defined(__DOXYGEN__)
#define INCLUDE_FROM_BOARD_DRIVER
#endif
/* Includes: */
#include <avr/pgmspace.h>
......
......@@ -62,7 +62,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_BUTTONS_H)
#if !defined(__INCLUDE_FROM_BUTTONS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Buttons.h instead.
#endif
......
......@@ -54,7 +54,7 @@
#include "AT45DB642D.h"
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_DATAFLASH_H)
#if !defined(__INCLUDE_FROM_DATAFLASH_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Dataflash.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_JOYSTICK_H)
#if !defined(__INCLUDE_FROM_JOYSTICK_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Joystick.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -54,7 +54,7 @@
#include "AT45DB642D.h"
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_DATAFLASH_H)
#if !defined(__INCLUDE_FROM_DATAFLASH_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/Dataflash.h instead.
#endif
......
......@@ -61,7 +61,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_LEDS_H)
#if !defined(__INCLUDE_FROM_LEDS_H)
#error Do not include this file directly. Include LUFA/Drivers/Board/LEDS.h instead.
#endif
......
......@@ -54,8 +54,7 @@
/* Macros: */
#if !defined(__DOXYGEN__)
#define INCLUDE_FROM_ADC_H
#define INCLUDE_FROM_CHIP_DRIVER
#define __INCLUDE_FROM_ADC_H
#endif
/* Includes: */
......
......@@ -62,7 +62,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_ADC_H)
#if !defined(__INCLUDE_FROM_ADC_H)
#error Do not include this file directly. Include LUFA/Drivers/Peripheral/ADC.h instead.
#endif
......
......@@ -63,7 +63,7 @@
#endif
/* Preprocessor Checks: */
#if !defined(INCLUDE_FROM_TWI_H)
#if !defined(__INCLUDE_FROM_TWI_H)
#error Do not include this file directly. Include LUFA/Drivers/Peripheral/TWI.h instead.
#endif
......
......@@ -28,7 +28,7 @@
this software.
*/
#define INCLUDE_FROM_SERIALSTREAM_C
#define __INCLUDE_FROM_SERIALSTREAM_C
#include "SerialStream.h"
FILE USARTStream = FDEV_SETUP_STREAM(SerialStream_TxByte, SerialStream_RxByte, _FDEV_SETUP_RW);
......
......@@ -70,7 +70,7 @@
extern FILE USARTStream;
/* Function Prototypes: */
#if defined(INCLUDE_FROM_SERIALSTREAM_C)
#if defined(__INCLUDE_FROM_SERIALSTREAM_C)
static int SerialStream_TxByte(char DataByte, FILE *Stream) ATTR_NON_NULL_PTR_ARG(2);
static int SerialStream_RxByte(FILE *Stream) ATTR_NON_NULL_PTR_ARG(1);
#endif
......
......@@ -53,8 +53,7 @@
/* Macros: */
#if !defined(__DOXYGEN__)
#define INCLUDE_FROM_TWI_H
#define INCLUDE_FROM_CHIP_DRIVER
#define __INCLUDE_FROM_TWI_H
#endif
/* Includes: */
......
......@@ -49,6 +49,10 @@
#ifndef _AUDIO_CLASS_H_
#define _AUDIO_CLASS_H_
/* Macros: */
#define __INCLUDE_FROM_AUDIO_DRIVER
#define __INCLUDE_FROM_USB_DRIVER
/* Includes: */
#include "../HighLevel/USBMode.h"
......
......@@ -50,6 +50,10 @@
#ifndef _CDC_CLASS_H_
#define _CDC_CLASS_H_
/* Macros: */
#define __INCLUDE_FROM_CDC_DRIVER
#define __INCLUDE_FROM_USB_DRIVER
/* Includes: */
#include "../HighLevel/USBMode.h"
......
......@@ -51,6 +51,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_AUDIO_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/Audio.h instead.
#endif
/* Macros: */
#if !defined(AUDIO_TOTAL_SAMPLE_RATES) || defined(__DOXYGEN__)
/** Total number of discrete audio sample rates supported by the device. This value can be overridden by defining this
......
......@@ -51,6 +51,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_CDC_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/CDC.h instead.
#endif
/* Macros: */
/** CDC Class specific request to get the current virtual serial port configuration settings. */
#define REQ_GetLineEncoding 0x21
......
......@@ -46,6 +46,11 @@
#include <string.h>
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_HID_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/HID.h instead.
#endif
/* Macros: */
/** HID Class Specific Request to get the current HID report from the device. */
#define REQ_GetReport 0x01
......
......@@ -41,6 +41,9 @@
#ifndef _MIDI_CLASS_COMMON_H_
#define _MIDI_CLASS_COMMON_H_
/* Macros: */
#define __INCLUDE_FROM_AUDIO_DRIVER
/* Includes: */
#include "../../USB.h"
#include "Audio.h"
......@@ -52,6 +55,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_MIDI_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/MIDI.h instead.
#endif
/* Macros: */
/** Audio class descriptor subtype value for a Audio class specific MIDI input jack descriptor. */
#define DSUBTYPE_InputJack 0x02
......
......@@ -51,6 +51,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_MS_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/MassStorage.h instead.
#endif
/* Macros: */
/** Mass Storage Class specific request to reset the Mass Storage interface, ready for the next command. */
#define REQ_MassStorageReset 0xFF
......
......@@ -49,8 +49,13 @@
/* Enable C linkage for C++ Compilers: */
#if defined(__cplusplus)
extern "C" {
#endif
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_PRINTER_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/Printer.h instead.
#endif
/* Macros: */
/** Port status mask for a printer device, indicating that an error has *not* occurred. */
#define PRNT_PORTSTATUS_NOTERROR (1 << 3)
......
......@@ -41,10 +41,13 @@
#ifndef _RNDIS_CLASS_COMMON_H_
#define _RNDIS_CLASS_COMMON_H_
/* Macros: */
#define __INCLUDE_FROM_CDC_DRIVER
/* Includes: */
#include "../../USB.h"
#include "CDC.h"
#include "RNDISConstants.h"
#include "CDC.h"
#include <string.h>
......@@ -53,6 +56,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_RNDIS_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/RNDIS.h instead.
#endif
/* Macros: */
/** Implemented RNDIS Version Major */
#define REMOTE_NDIS_VERSION_MAJOR 0x01
......
......@@ -51,6 +51,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#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
*
......
......@@ -28,9 +28,11 @@
this software.
*/
#define __INCLUDE_FROM_USB_DRIVER
#include "../../HighLevel/USBMode.h"
#if defined(USB_CAN_BE_DEVICE)
#define __INCLUDE_FROM_AUDIO_DRIVER
#include "Audio.h"
void Audio_Device_ProcessControlRequest(USB_ClassInfo_Audio_Device_t* const AudioInterfaceInfo)
......
......@@ -55,6 +55,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_AUDIO_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/Audio.h instead.
#endif
/* Public Interface - May be used in end-application: */
/* Type Defines: */
/** Class state structure. An instance of this structure should be made for each Audio interface
......
......@@ -28,10 +28,12 @@
this software.
*/
#define __INCLUDE_FROM_USB_DRIVER
#include "../../HighLevel/USBMode.h"
#if defined(USB_CAN_BE_DEVICE)
#define INCLUDE_FROM_CDC_CLASS_DEVICE_C
#define __INCLUDE_FROM_CDC_CLASS_DEVICE_C
#define __INCLUDE_FROM_CDC_DRIVER
#include "CDC.h"
void CDC_Device_Event_Stub(void)
......
......@@ -73,6 +73,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_CDC_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/CDC.h instead.
#endif
/* Public Interface - May be used in end-application: */
/* Type Defines: */
/** Class state structure. An instance of this structure should be made for each CDC interface
......@@ -281,7 +286,7 @@
/* Private Interface - For use in library only: */
#if !defined(__DOXYGEN__)
/* Function Prototypes: */
#if defined(INCLUDE_FROM_CDC_CLASS_DEVICE_C)
#if defined(__INCLUDE_FROM_CDC_CLASS_DEVICE_C)
static int CDC_Device_putchar(char c, FILE* Stream);
static int CDC_Device_getchar(FILE* Stream);
static int CDC_Device_getchar_Blocking(FILE* Stream);
......
......@@ -28,9 +28,11 @@
this software.
*/
#define __INCLUDE_FROM_USB_DRIVER
#include "../../HighLevel/USBMode.h"
#if defined(USB_CAN_BE_DEVICE)
#define __INCLUDE_FROM_HID_DRIVER
#include "HID.h"
void HID_Device_ProcessControlRequest(USB_ClassInfo_HID_Device_t* const HIDInterfaceInfo)
......
......@@ -55,6 +55,11 @@
extern "C" {
#endif
/* Preprocessor Checks: */
#if !defined(__INCLUDE_FROM_HID_DRIVER)
#error Do not include this file directly. Include LUFA/Drivers/Class/HID.h instead.
#endif
/* Public Interface - May be used in end-application: */
/* Type Defines: */
/** Class state structure. An instance of this structure should be made for each HID interface
...