tge/lib/mayasdk7/include/maya/mocapserial.h
2017-04-17 06:17:10 -06:00

105 lines
2.9 KiB
C
Executable File

/*-
==========================================================================
Copyright (C) 1995 - 2005 Alias Systems Corp. and/or its licensors. All
rights reserved.
The coded instructions, statements, computer programs, and/or related
material (collectively the "Data") in these files contain unpublished
information proprietary to Alias Systems Corp. ("Alias") and/or its
licensors, which is protected by Canadian and US federal copyright law and
by international treaties.
The Data may not be disclosed or distributed to third parties or be copied
or duplicated, in whole or in part, without the prior written consent of
Alias.
THE DATA IS PROVIDED "AS IS". ALIAS HEREBY DISCLAIMS ALL WARRANTIES RELATING
TO THE DATA, INCLUDING, WITHOUT LIMITATION, ANY AND ALL EXPRESS OR IMPLIED
WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE. IN NO EVENT SHALL ALIAS BE LIABLE FOR ANY DAMAGES
WHATSOEVER, WHETHER DIRECT, INDIRECT, SPECIAL, OR PUNITIVE, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, OR IN EQUITY,
ARISING OUT OF ACCESS TO, USE OF, OR RELIANCE UPON THE DATA.
==========================================================================
*/
/*
* mocapserial.h - Definitions for handling serial lines for motion
* capture servers for Maya
*/
#if !defined(__CAPSERIAL_H__)
#define __CAPSERIAL_H__ 1
#ifndef _WIN32
#include <termios.h>
#else
#define termios _DCB
#endif
/*
* Enumerated types
*/
typedef enum CapParity
{
CAP_PARITY_EVEN,
CAP_PARITY_ODD,
CAP_PARITY_NONE,
_CAP_PARITY_LAST
} CapParity;
typedef enum CapSerialMode
{
CAP_SERIAL_ASCII,
CAP_SERIAL_BINARY,
_CAP_MODE_LAST
} CapSerialMode;
/*
* Figure out if we should use prototypes or not
*/
#if !defined(_PROTO)
#if defined(PROTOTYPES) || defined(FUNCPROTO) || defined(__STDC__) || defined(__EXTENSIONS__) || defined(__cplusplus)
#define _PROTO(x) x
#else
#define _PROTO(x) ()
#endif
#endif // !defined(_PROTO)
/*
* Capture library serial routines function declarations/prototypes
*/
/*
* Open a serial port and return a file descriptor
*/
int CapSerialOpen _PROTO((char *tty, int baud, int data, CapParity parity,
int stop, CapSerialMode mode,
struct termios *save_attr));
/*
* Reset a serial port to its default attributes
*/
int CapSerialReset _PROTO((int tty_fd, struct termios *attr));
/*
* Read n bytes (even from a serial line)
*/
int CapSerialRead _PROTO((int tty_fd, void *buf, size_t nbytes));
/*
* Read n bytes (even from a serial line) with a possible timeout
*/
int CapSerialReadTimeout _PROTO((int tty_fd, void *buf,
size_t nbytes, int msec));
/*
* Write n bytes (even from a serial line)
*/
int CapSerialWrite _PROTO((int tty_fd, void *buf, size_t nbytes));
#endif /* __CAPSERIAL_H__ */