update esppilight lib
content of the library is not filtered on 433mhz only
This commit is contained in:
1 parent
a275e48ee1
commit
67dd7ac078
1030 files changed
+203335
-116
No files matched your search
@@ -0,0 +1,138 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// SerialController.h
|
||||
//
|
||||
// Cross-platform serial port handler
|
||||
//
|
||||
// Copyright (c) 2010 Jason Frazier <frazierjason@gmail.com>
|
||||
//
|
||||
// SOFTWARE NOTICE AND LICENSE
|
||||
//
|
||||
// This file is part of OpenZWave.
|
||||
//
|
||||
// OpenZWave is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Lesser General Public License as published
|
||||
// by the Free Software Foundation, either version 3 of the License,
|
||||
// or (at your option) any later version.
|
||||
//
|
||||
// OpenZWave is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public License
|
||||
// along with OpenZWave. If not, see <http://www.gnu.org/licenses/>.
|
||||
//
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#ifndef _SerialController_H
|
||||
#define _SerialController_H
|
||||
|
||||
#include <string>
|
||||
#include "../Defs.h"
|
||||
#include "Controller.h"
|
||||
|
||||
namespace OpenZWave
|
||||
{
|
||||
class Driver;
|
||||
class Msg;
|
||||
class SerialControllerImpl;
|
||||
|
||||
class SerialController: public Controller
|
||||
{
|
||||
friend class SerialControllerImpl;
|
||||
|
||||
public:
|
||||
enum Parity
|
||||
{
|
||||
Parity_None = 0,
|
||||
Parity_Odd,
|
||||
Parity_Even,
|
||||
Parity_Mark,
|
||||
Parity_Space
|
||||
};
|
||||
|
||||
enum StopBits
|
||||
{
|
||||
StopBits_One = 0,
|
||||
StopBits_OneAndAHalf = 1,
|
||||
StopBits_Two = 2
|
||||
};
|
||||
|
||||
/**
|
||||
* Constructor.
|
||||
* Creates an object that represents a serial port.
|
||||
*/
|
||||
SerialController();
|
||||
|
||||
/**
|
||||
* Destructor.
|
||||
* Destroys the serial port object.
|
||||
*/
|
||||
virtual ~SerialController();
|
||||
|
||||
/**
|
||||
* Set the serial port baud rate. The serial port must be closed for the setting to be accepted.
|
||||
* @param _baud Integer containing the expected baud-rate of the serial connection. Most Z-Wave interfaces run at 115200 baud.
|
||||
* @return True if the baud value was accepted.
|
||||
* @see Open, Close
|
||||
*/
|
||||
bool SetBaud( uint32 const _baud );
|
||||
|
||||
/**
|
||||
* Set the serial port parity. The serial port must be closed for the setting to be accepted.
|
||||
* @param _parity Parity enum value indicating the serial data's expected type of parity bits, if any.
|
||||
* @return True if the parity value was accepted.
|
||||
* @see Open, Close
|
||||
*/
|
||||
bool SetParity( Parity const _parity );
|
||||
|
||||
/**
|
||||
* Set the serial port stop bits. The serial port must be closed for the setting to be accepted.
|
||||
* @param _stopBits StopBits enum value indicating the serial data's expected number of stop-bits.
|
||||
* @return True if the stop bits value was accepted.
|
||||
* @see Open, Close
|
||||
*/
|
||||
bool SetStopBits( StopBits const _stopBits );
|
||||
|
||||
/**
|
||||
* Open a serial port.
|
||||
* Attempts to open a serial port and initialize it with the specified paramters.
|
||||
* @param _SerialControllerName The name of the port to open. For example, ttyS1 on Linux, or \\.\COM2 in Windows.
|
||||
* @return True if the port was opened and configured successfully.
|
||||
* @see Close, Read, Write
|
||||
*/
|
||||
bool Open( string const& _SerialControllerName );
|
||||
|
||||
/**
|
||||
* Close a serial port.
|
||||
* Closes the serial port.
|
||||
* @return True if the port was closed successfully, or false if the port was already closed, or an error occurred.
|
||||
* @see Open
|
||||
*/
|
||||
bool Close();
|
||||
|
||||
/**
|
||||
* Write to a serial port.
|
||||
* Attempts to write data to an open serial port.
|
||||
* @param _buffer Pointer to a block of memory containing the data to be written.
|
||||
* @param _length Length in bytes of the data.
|
||||
* @return The number of bytes written.
|
||||
* @see Read, Open, Close
|
||||
*/
|
||||
uint32 Write( uint8* _buffer, uint32 _length );
|
||||
|
||||
private:
|
||||
uint32 m_baud;
|
||||
SerialController::Parity m_parity;
|
||||
SerialController::StopBits m_stopBits;
|
||||
string m_serialControllerName;
|
||||
|
||||
SerialControllerImpl* m_pImpl; // Pointer to an object that encapsulates the platform-specific implementation of the serial port.
|
||||
bool m_bOpen;
|
||||
};
|
||||
|
||||
} // namespace OpenZWave
|
||||
|
||||
#endif //_SerialController_H
|
||||
|
||||
Reference in new issue
Block a user