home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / attribdf.idl < prev    next >
Encoding:
Text File  |  1996-02-21  |  2.4 KB  |  97 lines

  1. //
  2. //   COMPONENT_NAME: somi
  3. //
  4. //   ORIGINS: 27
  5. //
  6. //
  7. //   10H9767, 10H9769  (C) COPYRIGHT International Business Machines Corp. 1992,1994
  8. //   All Rights Reserved
  9. //   Licensed Materials - Property of IBM
  10. //   US Government Users Restricted Rights - Use, duplication or
  11. //   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  12. //
  13.  
  14. //  AttributeDef: CORBA Interface for attributed definitions
  15. //  See CORBA 7.5.5, p.135
  16.  
  17. #ifndef attribdf_idl
  18. #define attribdf_idl
  19.  
  20. #include <containd.idl>
  21. #include <somcls.idl>
  22.  
  23. // CORBA 7.5.5, p.135
  24. interface AttributeDef : Contained
  25. {
  26.     enum AttributeMode {NORMAL, READONLY};
  27.  
  28.     struct AttributeDescription {
  29.     Identifier    name;
  30.     RepositoryId  id;
  31.     RepositoryId  defined_in;
  32.     TypeCode      type;
  33.     AttributeMode mode;
  34.     };
  35.     // The inherited describe method returns an instance of this
  36.     // (AttributeDescription) structure in the "value" member of the
  37.     // Description structure defined in the Contained interface.
  38.  
  39.     attribute TypeCode type;
  40.     // The TypeCode of the receiving object.  The memory used to hold
  41.     // the TypeCode is contained in the receiving object, which retains
  42.     // ownership.  Hence, do not free the returned TypeCode.  If you want
  43.     // to obtain a separate copy, use the TypeCode_copy operation.
  44.  
  45.     attribute AttributeMode mode;
  46.     // The AttributeMode of the receiving object;
  47. #ifdef __SOMIDL__
  48.   implementation {
  49.       releaseorder: _get_type,_set_type,_get_mode,_set_mode;
  50.  
  51.       callstyle = idl;
  52.       majorversion = 2;
  53.       minorversion = 1;
  54.       filestem = attribdf;
  55.       dllname = "somir.dll";
  56.  
  57.       passthru C_h =
  58.     ""
  59.     "    #include <somtcnst.h>"
  60.     "    #include <somir.h>"
  61.     "    #include <containd.h>"
  62.     "";
  63.       passthru C_xh =
  64.     ""
  65.     "    #include <somtcnst.xh>"
  66.     "    #include <somir.xh>"
  67.     "    #include <containd.xh>"
  68.     "";
  69.       passthru C_hh =
  70.     ""
  71.     "    #include <somtcnst.hh>"
  72.     "    #include <somir.hh>"
  73.     "    #include <containd.hh>"
  74.     "";
  75.  
  76.       type: nodata;
  77.       mode: noget, noset;
  78.  
  79. #if defined __SOM_KERNEL_LEVEL && __SOM_KERNEL_LEVEL >= 250
  80.       _get_type : dual_owned_result;
  81. #else
  82.       _set_type : caller_owns_parameters = "type";
  83. #endif
  84.  
  85.       somInit: override;
  86.       somUninit: override;
  87.       somDumpSelf: override;
  88.       somDumpSelfInt: override;
  89.       describe: override;
  90.  
  91.   };
  92. #endif /* __SOMIDL__ */
  93. };
  94.  
  95.  
  96. #endif    /* attribdf_idl */
  97.