home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / som30tk.zip / som30os2.zip / include / som.hc < prev    next >
Text File  |  1996-12-24  |  1KB  |  61 lines

  1. #ifndef som_h 
  2. #define SOM_STRICT_IDL 1 
  3. #endif 
  4. /* @(#) 1.3 src/somk/som.h, somk.api, som3.0 3/12/96 19:52:03 [12/24/96 07:40:16] */
  5.  
  6. /*
  7.  * 96F8647, 96F8648, 96F8850 (C) Copyright IBM Corp. 1992, 1994
  8.  * All Rights Reserved
  9.  * Licensed Materials - Property of IBM
  10.  */
  11.  
  12. /*
  13.  *    SOM.H
  14.  *
  15.  *    First level include file for System Object Model
  16.  *    Multiple Inheritance Version
  17.  */
  18.  
  19. #ifndef som_h
  20. #define som_h
  21.  
  22. #include <somnames.h>
  23. #include <somplatf.h>
  24. #include <somtypes.h>
  25. #include <somcdev.h>
  26. #include <somcorba.h>
  27. #include <somapi.h>
  28.  
  29. /*
  30.  * C usage bindings for the primitive classes are responsible
  31.  * for indicating the coding style they support (i.e., original vs.
  32.  * CORBA style) by #defining SOM_STRICT_IDL if the CORBA style of
  33.  * usage bindings is desired. Thus, when this file (som.h) is
  34.  * included by C usage bindings, the following #ifdef provides
  35.  * definitions for the primitive classes appropriate to the
  36.  * usage bindings.
  37.  */
  38.  
  39. #ifdef SOM_STRICT_IDL
  40.  
  41.    #undef SOMObject
  42.    #undef SOMClass
  43.    #undef SOMClassMgr
  44.  
  45.    typedef SOMAny *SOMAnyStrict;
  46.  
  47.    #define SOMObject SOMAnyStrict
  48.    #define SOMClass SOMAnyStrict
  49.    #define SOMClassMgr SOMAnyStrict
  50.  
  51. #endif
  52.  
  53. #ifndef SOM_NO_OBJECTS
  54.    #define SOMObject_VA_EXTERN
  55.    #include <somobj.h>
  56.    #include <somcls.h>
  57.    #include <somcm.h>
  58. #endif /* !SOM_NO_OBJECTS */
  59.  
  60. #endif /* som_h */
  61.