gstreamer/gst/cothreads/pth.h.in
Andy Wingo 1bc541f213 The core code from pth has been taken out and included in gstreamer.
Original commit message from CVS:
The core code from pth has been taken out and included in gstreamer.
This code is documented, more or less, in http://www-124.ibm.com/pthreads/docs/rse-pmt.ps.

This code is designed to replace cothreads.[ch], eventually.
2002-01-21 00:20:29 +00:00

74 lines
2.1 KiB
C

/*
** GNU Pth - The GNU Portable Threads
** Copyright (c) 1999-2001 Ralf S. Engelschall <rse@engelschall.com>
**
** This file is part of GNU Pth, a non-preemptive thread scheduling
** library which can be found at http://www.gnu.org/software/pth/.
**
** 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307
** USA, or contact Ralf S. Engelschall <rse@engelschall.com>.
**
** pth.h: Pth public API definitions
*/
/* ``What you see is all you get.''
-- Brian Kernighan */
/* hacked, needs updated docs - wingo <wingo@pobox.com> */
#ifndef _PTH_H_
#define _PTH_H_
/* the library version */
#ifndef PTH_VERSION_STR
#define PTH_VERSION_STR "@PTH_VERSION_STR@"
#endif
#ifndef PTH_VERSION_HEX
#define PTH_VERSION_HEX @PTH_VERSION_HEX@
#endif
#ifndef PTH_VERSION
#define PTH_VERSION PTH_VERSION_HEX
#endif
/* essential headers */
#include <sys/types.h> /* for ssize_t, off_t */
#include <sys/signal.h> /* for sigset_t */
@EXTRA_INCLUDE_SYS_SELECT_H@
/* essential values */
#ifndef FALSE
#define FALSE (0)
#endif
#ifndef TRUE
#define TRUE (!FALSE)
#endif
#ifndef NUL
#define NUL '\0'
#endif
#ifndef NULL
#define NULL (void *)0
#endif
/* bitmask generation */
#define _BIT(n) (1<<(n))
/* C++ support */
#ifdef __cplusplus
#define BEGIN_DECLARATION extern "C" {
#define END_DECLARATION }
#else
#define BEGIN_DECLARATION /*nop*/
#define END_DECLARATION /*nop*/
#endif
#endif /* _PTH_H_ */