1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- /*
- * FreeModbus Libary: Linux Port
- * Copyright (C) 2006 Christian Walter <wolti@sil.at>
- *
- * This library 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 2.1 of the License, or (at your option) any later version.
- *
- * This library 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 this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * File: $Id: port.h,v 1.1 2006/08/01 20:58:49 wolti Exp $
- */
- #ifndef _PORT_H
- #define _PORT_H
- #include <assert.h>
- #define INLINE
- #define PR_BEGIN_EXTERN_C extern "C" {
- #define PR_END_EXTERN_C }
- #ifdef __cplusplus
- PR_BEGIN_EXTERN_C
- #endif
- /* ----------------------- Defines ------------------------------------------*/
- #define ENTER_CRITICAL_SECTION(x) vMBPortEnterCritical(x)
- #define EXIT_CRITICAL_SECTION(x) vMBPortExitCritical(x)
- #define MB_PORT_HAS_CLOSE 1
- #ifndef TRUE
- #define TRUE 1
- #endif
- #ifndef FALSE
- #define FALSE 0
- #endif
- /* ----------------------- Type definitions ---------------------------------*/
- typedef enum
- {
- MB_LOG_ERROR = 0,
- MB_LOG_WARN = 1,
- MB_LOG_INFO = 2,
- MB_LOG_DEBUG = 3
- } eMBPortLogLevel;
- typedef int SOCKET;
- #define SOCKET_ERROR (-1)
- #define INVALID_SOCKET (~0)
- typedef char BOOL;
- typedef unsigned char UCHAR;
- typedef char CHAR;
- typedef unsigned short USHORT;
- typedef short SHORT;
- typedef unsigned long ULONG;
- typedef long LONG;
- typedef struct _fmodbus_t fmodbus_t;
- /* ----------------------- Function prototypes ------------------------------*/
- void vMBPortEnterCritical( fmodbus_t* );
- void vMBPortExitCritical( fmodbus_t* );
- void vMBPortLog( eMBPortLogLevel eLevel, const CHAR * szModule,
- const CHAR * szFmt, ... );
- void vMBPortTimerPoll( fmodbus_t* ctx );
- BOOL xMBPortSerialPoll( fmodbus_t* ctx );
- BOOL xMBPortSerialSetTimeout(fmodbus_t* ctx, ULONG dwTimeoutMs );
- #ifdef __cplusplus
- PR_END_EXTERN_C
- #endif
- #endif
|