/**
* This is the PrintfC component. It provides the printf service for printing
* data over the serial interface using the standard c-style printf command.
- * It must be started via the SplitControl interface it provides. Data
- * printed using printf are buffered and only sent over the serial line after
- * making a call to PrintfFlush.flush(). This buffer has a maximum size of
- * 250 bytes at present. After calling start on this component, printf
- * statements can be made anywhere throughout your code, so long as you include
- * the "printf.h" header file in every file you wish to use it. Standard
- * practice is to start the printf service in the main application, and set up
- * a timer to periodically flush the printf buffer (500ms should do). In future
- * versions, user defined buffer sizes as well as well as automatic flushing at
- * user defined intervals will be supported.
+ * Data printed using printf are buffered and only sent over the serial line after
+ * the buffer is half full or an explicit call to printfflush() is made. This
+ * buffer has a maximum size of 250 bytes at present. This component is wired
+ * to a shadowed MainC component so that printf statements can be made anywhere
+ * throughout your code, so long as you include the "printf.h" header file in
+ * every file you wish to use it. Take a look at the printf tutorial (lesson 15)
+ * for more details.
*
- * @author Kevin Klues (klueska@cs.wustl.edu)
- * @version $Revision$
- * @date $Date$
+ * The printf service is currently only available for msp430 based motes
+ * (i.e. telos, eyes) and atmega128x based motes (i.e. mica2, micaz, iris). On the
+ * atmega platforms, avr-libc version 1.4 or above must be used.
+ */
+
+/**
+ * @author Kevin Klues <klueska@cs.stanford.edu>
+ * @date September 18, 2007
*/
#include "printf.h"
+++ /dev/null
-/*
- * "Copyright (c) 2006 Washington University in St. Louis.
- * All rights reserved.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose, without fee, and without written agreement is
- * hereby granted, provided that the above copyright notice, the following
- * two paragraphs and the author appear in all copies of this software.
- *
- * IN NO EVENT SHALL WASHINGTON UNIVERSITY IN ST. LOUIS BE LIABLE TO ANY PARTY
- * FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING
- * OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF WASHINGTON
- * UNIVERSITY IN ST. LOUIS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * WASHINGTON UNIVERSITY IN ST. LOUIS SPECIFICALLY DISCLAIMS ANY WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
- * ON AN "AS IS" BASIS, AND WASHINGTON UNIVERSITY IN ST. LOUIS HAS NO
- * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR
- * MODIFICATIONS."
- */
-
-/**
- *
- * @author Kevin Klues (klueska@cs.wustl.edu)
- * @version $Revision$
- * @date $Date$
- */
-
-#include "printf.h"
-
-interface PrintfFlush
-{
- command error_t flush();
- event void flushDone(error_t error);
-}
/**
* This is the PrintfP component. It provides the printf service for printing
* data over the serial interface using the standard c-style printf command.
- * It must be started via the SplitControl interface it provides. Data
- * printed using printf are buffered and only sent over the serial line after
- * making a call to PrintfFlush.flush(). This buffer has a maximum size of
- * 250 bytes at present. After calling start on this component, printf
- * statements can be made anywhere throughout your code, so long as you include
- * the "printf.h" header file in every file you wish to use it. Standard
- * practice is to start the printf service in the main application, and set up
- * a timer to periodically flush the printf buffer (500ms should do). In future
- * versions, user defined buffer sizes as well as well as automatic flushing at
- * user defined intervals will be supported.
+ * Data printed using printf are buffered and only sent over the serial line after
+ * the buffer is half full or an explicit call to printfflush() is made. This
+ * buffer has a maximum size of 250 bytes at present. This component is wired
+ * to a shadowed MainC component so that printf statements can be made anywhere
+ * throughout your code, so long as you include the "printf.h" header file in
+ * every file you wish to use it. Take a look at the printf tutorial (lesson 15)
+ * for more details.
*
* The printf service is currently only available for msp430 based motes
- * (i.e. telos, eyes) and atmega128 based motes (i.e. mica2, micaz). On the
- * atmega platforms, avr-libc version 1.4 or above mus tbe used.
- *
+ * (i.e. telos, eyes) and atmega128x based motes (i.e. mica2, micaz, iris). On the
+ * atmega platforms, avr-libc version 1.4 or above must be used.
*/
/**