MHVLib  20111011
An efficiency oriented runtime library for AVR microcontrollers
A:/eclipse/mhvlib-Vusb-Keyboard/MHV_VusbTypist.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2011, Make, Hack, Void Inc
00003  * All rights reserved.
00004  *
00005  *  License: GNU GPL v2 (see mhvlib-Vusb-Keyboard/vusb/License.txt)
00006  *
00007  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
00008  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
00009  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
00010  * DISCLAIMED. IN NO EVENT SHALL MAKE, HACK, VOID BE LIABLE FOR ANY
00011  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
00012  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
00013  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
00014  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
00015  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
00016  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00017  */
00018 
00019 #ifndef MHV_VUSBTYPIST_H_
00020 #define MHV_VUSBTYPIST_H_
00021 
00022 #include <MHV_VusbKeyboard.h>
00023 #include <MHV_Device_TX.h>
00024 
00025 class MHV_VusbTypist : public MHV_VusbKeyboard, public MHV_Device_TX {
00026 protected:
00027         bool _isTyping;
00028 
00029         void runTxBuffers();
00030         void typeChar(char c);
00031 
00032 public:
00033         MHV_VusbTypist(MHV_RingBuffer *txBuffer, MHV_RTC *rtc);
00034         void alarm(MHV_ALARM *alarm);
00035 };
00036 
00037 #endif /* MHV_VUSBTYPIST_H_ */