Clean up excessive whitespace at the end of each line using the wspurify tool made...
[pub/USBasp.git] / LUFA / Scheduler / Scheduler.h
index b77ec54..b4946d6 100644 (file)
@@ -1,7 +1,7 @@
 /*
              LUFA Library
      Copyright (C) Dean Camera, 2010.
 /*
              LUFA Library
      Copyright (C) Dean Camera, 2010.
-              
+
   dean [at] fourwalledcubicle [dot] com
       www.fourwalledcubicle.com
 */
   dean [at] fourwalledcubicle [dot] com
       www.fourwalledcubicle.com
 */
@@ -9,13 +9,13 @@
 /*
   Copyright 2010  Dean Camera (dean [at] fourwalledcubicle [dot] 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
   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
   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
   software without specific, written prior permission.
 
   The author disclaim all warranties with regard to this
@@ -36,7 +36,7 @@
  *
  *  \deprecated This module is deprecated and will be removed in a future library release.
  */
  *
  *  \deprecated This module is deprecated and will be removed in a future library release.
  */
+
 /** @defgroup Group_Scheduler Simple Task Scheduler - LUFA/Scheduler/Scheduler.h
  *
  *  \deprecated This module is deprecated and will be removed in a future library release.
 /** @defgroup Group_Scheduler Simple Task Scheduler - LUFA/Scheduler/Scheduler.h
  *
  *  \deprecated This module is deprecated and will be removed in a future library release.
  *  Usage Example:
  *  \code
  *      #include <LUFA/Scheduler/Scheduler.h>
  *  Usage Example:
  *  \code
  *      #include <LUFA/Scheduler/Scheduler.h>
- *      
+ *
  *      TASK(MyTask1); // Task prototype
  *      TASK(MyTask2); // Task prototype
  *      TASK(MyTask1); // Task prototype
  *      TASK(MyTask2); // Task prototype
- *      
+ *
  *      TASK_LIST
  *      {
  *          { .Task = MyTask1, .TaskStatus = TASK_RUN, .GroupID = 1  },
  *      TASK_LIST
  *      {
  *          { .Task = MyTask1, .TaskStatus = TASK_RUN, .GroupID = 1  },
  *
  *  @{
  */
  *
  *  @{
  */
+
 #ifndef __SCHEDULER_H__
 #define __SCHEDULER_H__
 
        /* Includes: */
                #include <stdint.h>
                #include <stdbool.h>
 #ifndef __SCHEDULER_H__
 #define __SCHEDULER_H__
 
        /* Includes: */
                #include <stdint.h>
                #include <stdbool.h>
-               
+
                #include <util/atomic.h>
 
                #include "../Common/Common.h"
                #include <util/atomic.h>
 
                #include "../Common/Common.h"
                         *  \endcode
                         */
                        #define TASK(name)              void name (void)
                         *  \endcode
                         */
                        #define TASK(name)              void name (void)
-                       
+
                        /** Defines a task list array, containing one or more task entries of the type TaskEntry_t. Each task list
                         *  should be encased in curly braces and ended with a comma.
                         *
                        /** Defines a task list array, containing one or more task entries of the type TaskEntry_t. Each task list
                         *  should be encased in curly braces and ended with a comma.
                         *
                         *      }
                         *  \endcode
                         */
                         *      }
                         *  \endcode
                         */
-                       #define TASK_LIST               TaskEntry_t Scheduler_TaskList[] = 
-                       
+                       #define TASK_LIST               TaskEntry_t Scheduler_TaskList[] =
+
                        /** Constant, giving the maximum delay in scheduler ticks which can be stored in a variable of type
                         *  \ref SchedulerDelayCounter_t.
                         */
                        /** Constant, giving the maximum delay in scheduler ticks which can be stored in a variable of type
                         *  \ref SchedulerDelayCounter_t.
                         */
 
                        /** Task status mode constant, for passing to \ref Scheduler_SetTaskMode() or \ref Scheduler_SetGroupTaskMode(). */
                        #define TASK_STOP               false
 
                        /** Task status mode constant, for passing to \ref Scheduler_SetTaskMode() or \ref Scheduler_SetGroupTaskMode(). */
                        #define TASK_STOP               false
-                       
+
                /* Pseudo-Function Macros: */
                        #if defined(__DOXYGEN__)
                                /** Starts the scheduler in its infinite loop, executing running tasks. This should be placed at the end
                                 *  of the user application's main() function, as it can never return to the calling function.
                                 */
                                void Scheduler_Start(void);
                /* Pseudo-Function Macros: */
                        #if defined(__DOXYGEN__)
                                /** Starts the scheduler in its infinite loop, executing running tasks. This should be placed at the end
                                 *  of the user application's main() function, as it can never return to the calling function.
                                 */
                                void Scheduler_Start(void);
-                               
+
                                /** Initialises the scheduler so that the scheduler functions can be called before the scheduler itself
                                 *  is started. This must be executed before any scheduler function calls other than Scheduler_Start(),
                                 *  and can be omitted if no such functions could be called before the scheduler is started.
                                /** Initialises the scheduler so that the scheduler functions can be called before the scheduler itself
                                 *  is started. This must be executed before any scheduler function calls other than Scheduler_Start(),
                                 *  and can be omitted if no such functions could be called before the scheduler is started.
                /* Type Defines: */
                        /** Type define for a pointer to a scheduler task. */
                        typedef void (*TaskPtr_t)(void);
                /* Type Defines: */
                        /** Type define for a pointer to a scheduler task. */
                        typedef void (*TaskPtr_t)(void);
-                       
+
                        /** Type define for a variable which can hold a tick delay value for the scheduler up to the maximum delay
                         *  possible.
                         */
                        typedef uint16_t SchedulerDelayCounter_t;
                        /** Type define for a variable which can hold a tick delay value for the scheduler up to the maximum delay
                         *  possible.
                         */
                        typedef uint16_t SchedulerDelayCounter_t;
-                       
+
                        /** \brief Scheduler Task List Entry Structure.
                         *
                         *  Structure for holding a single task's information in the scheduler task list.
                        /** \brief Scheduler Task List Entry Structure.
                         *
                         *  Structure for holding a single task's information in the scheduler task list.
                         *  functions should be used instead of direct manipulation.
                         */
                        exter TaskEntry_t Scheduler_TaskList[];
                         *  functions should be used instead of direct manipulation.
                         */
                        exter TaskEntry_t Scheduler_TaskList[];
-                       
+
                        /** Contains the total number of tasks in the task list, irrespective of if the task's status is set to
                         *  \ref TASK_RUN or \ref TASK_STOP.
                         *
                        /** Contains the total number of tasks in the task list, irrespective of if the task's status is set to
                         *  \ref TASK_RUN or \ref TASK_STOP.
                         *
                                        *DelayCounter = Scheduler_TickCounter;
                                }
                        }
                                        *DelayCounter = Scheduler_TickCounter;
                                }
                        }
-               
+
                /* Function Prototypes: */
                        /** Determines if the given tick delay has elapsed, based on the given delay period and tick counter value.
                         *
                /* Function Prototypes: */
                        /** Determines if the given tick delay has elapsed, based on the given delay period and tick counter value.
                         *
                        bool Scheduler_HasDelayElapsed(const uint16_t Delay,
                                                       SchedulerDelayCounter_t* const DelayCounter)
                                                       ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(2);
                        bool Scheduler_HasDelayElapsed(const uint16_t Delay,
                                                       SchedulerDelayCounter_t* const DelayCounter)
                                                       ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(2);
-                       
+
                        /** Sets the task mode for a given task.
                         *
                         *  \param[in] Task        Name of the task whose status is to be changed.
                        /** Sets the task mode for a given task.
                         *
                         *  \param[in] Task        Name of the task whose status is to be changed.
                         */
                        void Scheduler_SetTaskMode(const TaskPtr_t Task,
                                                   const bool TaskStatus);
                         */
                        void Scheduler_SetTaskMode(const TaskPtr_t Task,
                                                   const bool TaskStatus);
-                       
+
                        /** Sets the task mode for a given task group ID, allowing for an entire group of tasks to have their
                         *  statuses changed at once.
                         *
                        /** Sets the task mode for a given task group ID, allowing for an entire group of tasks to have their
                         *  statuses changed at once.
                         *
                        {
                                Scheduler_TotalTasks = TotalTasks;
                        }
                        {
                                Scheduler_TotalTasks = TotalTasks;
                        }
-               
+
                        static inline void Scheduler_GoSchedule(const uint8_t TotalTasks) ATTR_NO_RETURN ATTR_ALWAYS_INLINE ATTR_DEPRECATED;
                        static inline void Scheduler_GoSchedule(const uint8_t TotalTasks)
                        {
                        static inline void Scheduler_GoSchedule(const uint8_t TotalTasks) ATTR_NO_RETURN ATTR_ALWAYS_INLINE ATTR_DEPRECATED;
                        static inline void Scheduler_GoSchedule(const uint8_t TotalTasks)
                        {
                                for (;;)
                                {
                                        TaskEntry_t* CurrTask = &Scheduler_TaskList[0];
                                for (;;)
                                {
                                        TaskEntry_t* CurrTask = &Scheduler_TaskList[0];
-                                       
+
                                        while (CurrTask != &Scheduler_TaskList[TotalTasks])
                                        {
                                                if (CurrTask->TaskStatus == TASK_RUN)
                                        while (CurrTask != &Scheduler_TaskList[TotalTasks])
                                        {
                                                if (CurrTask->TaskStatus == TASK_RUN)
                                }
                        }
        #endif
                                }
                        }
        #endif
-               
+
        /* Disable C linkage for C++ Compilers: */
                #if defined(__cplusplus)
                        }
                #endif
        /* Disable C linkage for C++ Compilers: */
                #if defined(__cplusplus)
                        }
                #endif
-               
+
 #endif
 
 /** @} */
 #endif
 
 /** @} */
+