source: rtems/cpukit/posix/macros/rtems/posix/cond.inl @ 2b2bda4

4.104.114.84.95
Last change on this file since 2b2bda4 was 2b2bda4, checked in by Joel Sherrill <joel.sherrill@…>, on Dec 1, 2000 at 6:57:36 PM

2000-12-01 Joel Sherrill <joel@…>

  • Added macro support to POSIX API. This is known to compile.
  • macros/rtems/posix/cond.inl, macros/rtems/posix/intr.inl, macros/rtems/posix/key.inl, macros/rtems/posix/mqueue.inl, macros/rtems/posix/mutex.inl, macros/rtems/posix/priority.inl, macros/rtems/posix/pthread.inl, macros/rtems/posix/semaphore.inl, macros/rtems/posix/timer.inl: New files.
  • configure.in: Removed error check for enabling macros.
  • rtems/posix/mutex.h: #if 0'ed out prototypes for inlined routines since you cannot have prototypes for macros.
  • macros/rtems/posix/Makefile.am: Added files.
  • Property mode set to 100644
File size: 1.6 KB
Line 
1/*  rtems/posix/cond.inl
2 *
3 *  This include file contains the macro implementation of the private
4 *  inlined routines for POSIX condition variables.
5 *
6 *  COPYRIGHT (c) 1989-1999.
7 *  On-Line Applications Research Corporation (OAR).
8 *
9 *  The license and distribution terms for this file may be
10 *  found in the file LICENSE in this distribution or at
11 *  http://www.OARcorp.com/rtems/license.html.
12 *
13 *  $Id$
14 */
15 
16#ifndef __RTEMS_POSIX_CONDITION_VARIABLES_inl
17#define __RTEMS_POSIX_CONDITION_VARIABLES_inl
18 
19/*PAGE
20 *
21 *  _POSIX_Condition_variables_Allocate
22 */
23 
24#define _POSIX_Condition_variables_Allocate() \
25  (POSIX_Condition_variables_Control *) \
26    _Objects_Allocate( &_POSIX_Condition_variables_Information )
27 
28/*PAGE
29 *
30 *  _POSIX_Condition_variables_Free
31 */
32 
33#define _POSIX_Condition_variables_Free( _the_condition_variable ) \
34  _Objects_Free( &_POSIX_Condition_variables_Information, \
35    &(_the_condition_variable)->Object)
36 
37/*PAGE
38 *
39 *  _POSIX_Condition_variables_Get
40 */
41 
42/* XXX how to write this as a macro */
43static POSIX_Condition_variables_Control *_POSIX_Condition_variables_Get (
44  Objects_Id        *id,
45  Objects_Locations *location
46)
47{
48/* XXX should support COND_INITIALIZER */
49  if ( id )
50    return (POSIX_Condition_variables_Control *)
51      _Objects_Get( &_POSIX_Condition_variables_Information, *id, location );
52
53  *location = OBJECTS_ERROR;
54  return NULL;
55}
56 
57/*PAGE
58 *
59 *  _POSIX_Condition_variables_Is_null
60 */
61 
62#define _POSIX_Condition_variables_Is_null( _the_condition_variable ) \
63  (!(_the_condition_variable))
64
65#endif
66/*  end of include file */
Note: See TracBrowser for help on using the repository browser.