/*- // ========================================================================== // Copyright (C) 1995 - 2006 Autodesk, Inc., 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 Autodesk, Inc. ("Autodesk") and/or its // licensors, which is protected by U.S. and Canadian 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 Autodesk. // // The copyright notices in the Software and this entire statement, // including the above license grant, this restriction and the following // disclaimer, must be included in all copies of the Software, in whole // or in part, and all derivative works of the Software, unless such copies // or derivative works are solely in the form of machine-executable object // code generated by a source language processor. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND. // AUTODESK DOES NOT MAKE AND HEREBY DISCLAIMS ANY EXPRESS OR IMPLIED // WARRANTIES INCLUDING, BUT NOT LIMITED TO, THE WARRANTIES OF // NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, // OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE PRACTICE. IN NO // EVENT WILL AUTODESK AND/OR ITS LICENSORS BE LIABLE FOR ANY LOST // REVENUES, DATA, OR PROFITS, OR SPECIAL, DIRECT, INDIRECT, OR // CONSEQUENTIAL DAMAGES, EVEN IF AUTODESK AND/OR ITS LICENSORS HAS // BEEN ADVISED OF THE POSSIBILITY OR PROBABILITY OF SUCH DAMAGES. // ========================================================================== */ /* * mocapserial.h - Definitions for handling serial lines for motion * capture servers for Maya */ #if !defined(__CAPSERIAL_H__) #define __CAPSERIAL_H__ 1 #ifndef _WIN32 #include #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) // FUNCPROTO -> detects X11 define // __STDC__ / __cplusplus, standard defines to test for ANSI C prototypes requirement #if defined(FUNCPROTO) || defined(__STDC__) || 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__ */