/** \dir "HW"
 *
 *  \brief This directory contains source code interfacing to the lowest level of the hardware on this CPU.
 *
 */

/** \file
 *  \brief This file defines the interface to the low-level hardware used by this software.
 *
 *  This file should be included by any file outside the HW package wishing to make use
 *  of any of the HW functionality.
 *
 *  \note As always, <project.h> and <CONFIG.h> should be included <I>before</I> this file.
 */

#ifndef HW_H
#define HW_H

#ifdef __cplusplus
extern "C" {
#endif

/* Preprocessor and Type Definitions */

//! Represents the states of a Digital Input or Digital Output.
typedef enum
{
   //! Represents low voltage (logic '0') on a digital input or output.
   HW_DIGITAL_STATE_LOW  = 0,

   //! Represents high voltage (logic '1') on a digital input or output.
   HW_DIGITAL_STATE_HIGH = 1,

   //! Used when the state of a digital input or output cannot be determined.
   HW_DIGITAL_STATE_UNKNOWN = 2
} HW_DigitalState_T;

/* Include Files */

#include "HW_CapSense.h"

/* Public Variables */

/* Public Functions */

#ifdef __cplusplus
}
#endif

#endif // HW_H
