Show terminal.h syntax highlighted
/***************************************************************************
terminal.h - Null render device
-------------------
begin : Tue Sep 05 2004
copyright : (C) 2004 by emedia-solutions wolf
email : markus@emedia-solutions-wolf.de
***************************************************************************
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is the NeoEngine, NeoDevNull, terminal.h
The Initial Developer of the Original Code is Markus Wolf.
Portions created by Markus Wolf are Copyright (C) 2004
emedia-solutions wolf. All Rights Reserved.
***************************************************************************/
#ifndef __NENULLTERMINAL_H
#define __NENULLTERMINAL_H
#include <neoengine/base.h>
#ifdef POSIX
# include <termios.h>
#endif
namespace NeoNull
{
/**
* \brief Nulldevice input implementation for terminal i/o
* \author Markus Wolf (markus@emedia-solutions-wolf.de)
*/
class Terminal
{
public:
#ifdef POSIX
/*! Current terminal setting */
static struct termios current;
/*! Initial terminal setting */
static struct termios initial;
#endif
public:
/**
* Initialized terminal i/o
*/
Terminal();
/**
* Shutdown terminal i/o
*/
~Terminal();
/**
* Restores the terminal mode
*/
void Restore();
/**
* Sets the terminal to character based input
*/
void SetCharacter();
/**
* Sets the terminal to line based input
*/
void SetLine();
};
}; /* namespace */
#endif /* __NENULLTERMINAL_H */
See more files for this project here