home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / tolkit45.zip / os2tk45 / som / include / tssitr.h < prev    next >
C/C++ Source or Header  |  1999-02-22  |  10KB  |  254 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: tssitr.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emith: 2.47
  8.  */
  9.  
  10. /*
  11.  *    COMPONENT_NAME: somuc
  12.  * 
  13.  *    ORIGINS: 82, 81, 27
  14.  * 
  15.  * 
  16.  *     25H7912  (C)  COPYRIGHT International Business Machines Corp. 1992,1996,1996
  17.  *    All Rights Reserved
  18.  *    Licensed Materials - Property of IBM
  19.  *    US Government Users Restricted Rights - Use, duplication or
  20.  *    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  21.  * 
  22.  *    Copyright ⌐ 1988-92 Apple Computer, Inc.  All rights reserved.
  23.  * 
  24.  * CLASS_NAME: somf_TSortedSequenceIterator
  25.  * 
  26.  * DESCRIPTION: An iterator for TSortedSeqence that will iterate over all of
  27.  *              the objects in a sorted sequence.
  28.  * 
  29.  */
  30.  
  31.  
  32. #ifndef SOM_somf_TSortedSequenceIterator_h
  33. #define SOM_somf_TSortedSequenceIterator_h
  34.  
  35.  
  36. /*
  37.  * Passthru lines: File: "C.h", "before"
  38.  */
  39.  
  40. #include <tss.h>
  41. #include <morder.h>
  42.  
  43. #include <som.h>
  44.  
  45. /*
  46.  * -- This emitter treats Method Tokens as Thunks by default.
  47.  * -- Use the sc modifier "nothunks" to change this default
  48.  */
  49. #undef somresolve_
  50. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  51.  
  52. /*
  53.  * Define the class name as an object type
  54.  */
  55. #ifndef somf_TSortedSequenceIterator
  56. #define somf_TSortedSequenceIterator SOMObject
  57. #endif
  58. #include <tseqitr.h>
  59.  
  60. /*
  61.  * Start of bindings for IDL types
  62.  */
  63.  
  64. #ifndef SOMClass
  65.     #define SOMClass SOMObject
  66. #endif /* SOMClass */
  67. #ifndef somf_MCollectible
  68.     #define somf_MCollectible SOMObject
  69. #endif /* somf_MCollectible */
  70. #ifndef somf_TSortedSequence
  71.     #define somf_TSortedSequence SOMObject
  72. #endif /* somf_TSortedSequence */
  73. #ifndef somf_TSortedSequenceNode
  74.     #define somf_TSortedSequenceNode SOMObject
  75. #endif /* somf_TSortedSequenceNode */
  76. #ifndef somf_MOrderableCollectible
  77.     #define somf_MOrderableCollectible SOMObject
  78. #endif /* somf_MOrderableCollectible */
  79.  
  80. /*
  81.  * End of bindings for IDL types.
  82.  */
  83.  
  84. #define somf_TSortedSequenceIterator_MajorVersion 2
  85. #define somf_TSortedSequenceIterator_MinorVersion 1
  86.  
  87. /*
  88.  * External name shortening if required
  89.  */
  90. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  91. #define somf_TSortedSequenceIteratorNewClass c
  92. #pragma linkage(c, system)
  93. #define somf_TSortedSequenceIteratorClassData d
  94. #define somf_TSortedSequenceIteratorCClassData x
  95. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  96. /*--------------Migration------------*/
  97. #define somf_TSortedSequenceIterator_classObj somf_TSortedSequenceIteratorClassData.classObject
  98. #define _somf_TSortedSequenceIterator somf_TSortedSequenceIterator_classObj
  99.  
  100. /*
  101.  * Declare the class creation procedure
  102.  */
  103. SOMEXTERN SOMClass * SOMLINK somf_TSortedSequenceIteratorNewClass(integer4 somtmajorVersion,
  104.         integer4 somtminorVersion);
  105. #pragma linkage(somf_TSortedSequenceIteratorNewClass, system)
  106.  
  107. /*
  108.  * Declare the class data structure
  109.  */
  110. SOMEXTERN struct somf_TSortedSequenceIteratorClassDataStructure {
  111.     SOMClass *classObject;
  112.     somMToken somfStartHere;
  113.     somMToken somfTSortedSequenceIteratorInit;
  114. } SOMDLINK somf_TSortedSequenceIteratorClassData;
  115.  
  116. /*
  117.  * Declare the C specific class data structure
  118.  */
  119. SOMEXTERN struct somf_TSortedSequenceIteratorCClassDataStructure {
  120.     somMethodTabs parentMtab;
  121.     somDToken instanceDataToken;
  122. } SOMDLINK somf_TSortedSequenceIteratorCClassData;
  123.  
  124. /*
  125.  * New and Renew macros for somf_TSortedSequenceIterator
  126.  */
  127. #define somf_TSortedSequenceIteratorNew() \
  128.    ( _somf_TSortedSequenceIterator ? \
  129.     _somNew(_somf_TSortedSequenceIterator) \
  130.     : ( somf_TSortedSequenceIteratorNewClass(\
  131.         somf_TSortedSequenceIterator_MajorVersion, \
  132.         somf_TSortedSequenceIterator_MinorVersion),\
  133.        _somNew(_somf_TSortedSequenceIterator)))
  134. #define somf_TSortedSequenceIteratorRenew(buf) \
  135.    ( _somf_TSortedSequenceIterator ? \
  136.     _somRenew(_somf_TSortedSequenceIterator, buf) \
  137.     : ( somf_TSortedSequenceIteratorNewClass(\
  138.         somf_TSortedSequenceIterator_MajorVersion, \
  139.         somf_TSortedSequenceIterator_MinorVersion),\
  140.        _somRenew(_somf_TSortedSequenceIterator, buf)))
  141.  
  142. /*
  143.  * Override method: somfFirst
  144.  */
  145. #define somf_TSortedSequenceIterator_somfFirst(somSelf,ev) \
  146.     somf_TIterator_somfFirst(somSelf,ev)
  147.  
  148. /*
  149.  * Override method: somfNext
  150.  */
  151. #define somf_TSortedSequenceIterator_somfNext(somSelf,ev) \
  152.     somf_TIterator_somfNext(somSelf,ev)
  153.  
  154. /*
  155.  * Override method: somfLast
  156.  */
  157. #define somf_TSortedSequenceIterator_somfLast(somSelf,ev) \
  158.     somf_TSequenceIterator_somfLast(somSelf,ev)
  159.  
  160. /*
  161.  * Override method: somfPrevious
  162.  */
  163. #define somf_TSortedSequenceIterator_somfPrevious(somSelf,ev) \
  164.     somf_TSequenceIterator_somfPrevious(somSelf,ev)
  165.  
  166. /*
  167.  * Override method: somfRemove
  168.  */
  169. #define somf_TSortedSequenceIterator_somfRemove(somSelf,ev) \
  170.     somf_TIterator_somfRemove(somSelf,ev)
  171.  
  172. /*
  173.  * New Method: somfTSortedSequenceIteratorInit
  174.  */
  175. typedef somf_TSortedSequenceIterator*   SOMLINK somTP_somf_TSortedSequenceIterator_somfTSortedSequenceIteratorInit(somf_TSortedSequenceIterator *somSelf, Environment *ev, 
  176.         somf_TSortedSequence* h);
  177. #pragma linkage(somTP_somf_TSortedSequenceIterator_somfTSortedSequenceIteratorInit, system)
  178. typedef somTP_somf_TSortedSequenceIterator_somfTSortedSequenceIteratorInit *somTD_somf_TSortedSequenceIterator_somfTSortedSequenceIteratorInit;
  179. /*
  180.  *  Initializes the new sorted sequence iterator.
  181.  */
  182. #define somMD_somf_TSortedSequenceIterator_somfTSortedSequenceIteratorInit "::somf_TSortedSequenceIterator::somfTSortedSequenceIteratorInit"
  183. #define somf_TSortedSequenceIterator_somfTSortedSequenceIteratorInit(somSelf,ev,h) \
  184.     (SOM_Resolve(somSelf, somf_TSortedSequenceIterator, somfTSortedSequenceIteratorInit) \
  185.     (somSelf,ev,h))
  186. #ifndef SOMGD_somfTSortedSequenceIteratorInit
  187.     #if (defined(_somfTSortedSequenceIteratorInit) || defined(__somfTSortedSequenceIteratorInit))
  188.         #undef _somfTSortedSequenceIteratorInit
  189.         #undef __somfTSortedSequenceIteratorInit
  190.         #define SOMGD_somfTSortedSequenceIteratorInit 1
  191.     #else
  192.         #define _somfTSortedSequenceIteratorInit somf_TSortedSequenceIterator_somfTSortedSequenceIteratorInit
  193.     #endif /* _somfTSortedSequenceIteratorInit */
  194. #endif /* SOMGD_somfTSortedSequenceIteratorInit */
  195.  
  196. /*
  197.  * New Method: somfStartHere
  198.  */
  199. typedef somf_MOrderableCollectible*   SOMLINK somTP_somf_TSortedSequenceIterator_somfStartHere(somf_TSortedSequenceIterator *somSelf, Environment *ev, 
  200.         somf_MOrderableCollectible* obj);
  201. #pragma linkage(somTP_somf_TSortedSequenceIterator_somfStartHere, system)
  202. typedef somTP_somf_TSortedSequenceIterator_somfStartHere *somTD_somf_TSortedSequenceIterator_somfStartHere;
  203. /*
  204.  *  Start Iterating through the TSroted Sequence, only don't start at the
  205.  *  front of the collection, start at obj.
  206.  */
  207. #define somMD_somf_TSortedSequenceIterator_somfStartHere "::somf_TSortedSequenceIterator::somfStartHere"
  208. #define somf_TSortedSequenceIterator_somfStartHere(somSelf,ev,obj) \
  209.     (SOM_Resolve(somSelf, somf_TSortedSequenceIterator, somfStartHere) \
  210.     (somSelf,ev,obj))
  211. #ifndef SOMGD_somfStartHere
  212.     #if (defined(_somfStartHere) || defined(__somfStartHere))
  213.         #undef _somfStartHere
  214.         #undef __somfStartHere
  215.         #define SOMGD_somfStartHere 1
  216.     #else
  217.         #define _somfStartHere somf_TSortedSequenceIterator_somfStartHere
  218.     #endif /* _somfStartHere */
  219. #endif /* SOMGD_somfStartHere */
  220. #ifndef SOM_DONT_USE_INHERITED_MACROS
  221. #define somf_TSortedSequenceIterator_somDefaultInit SOMObject_somDefaultInit
  222. #define somf_TSortedSequenceIterator_somDestruct SOMObject_somDestruct
  223. #define somf_TSortedSequenceIterator_somDefaultCopyInit SOMObject_somDefaultCopyInit
  224. #define somf_TSortedSequenceIterator_somDefaultAssign SOMObject_somDefaultAssign
  225. #define somf_TSortedSequenceIterator_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
  226. #define somf_TSortedSequenceIterator_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
  227. #define somf_TSortedSequenceIterator_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
  228. #define somf_TSortedSequenceIterator_somDefaultConstAssign SOMObject_somDefaultConstAssign
  229. #define somf_TSortedSequenceIterator_somDefaultVAssign SOMObject_somDefaultVAssign
  230. #define somf_TSortedSequenceIterator_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
  231. #define somf_TSortedSequenceIterator_somInit SOMObject_somInit
  232. #define somf_TSortedSequenceIterator_somFree SOMObject_somFree
  233. #define somf_TSortedSequenceIterator_somUninit SOMObject_somUninit
  234. #define somf_TSortedSequenceIterator_somGetClass SOMObject_somGetClass
  235. #define somf_TSortedSequenceIterator_somGetClassName SOMObject_somGetClassName
  236. #define somf_TSortedSequenceIterator_somGetSize SOMObject_somGetSize
  237. #define somf_TSortedSequenceIterator_somIsA SOMObject_somIsA
  238. #define somf_TSortedSequenceIterator_somIsInstanceOf SOMObject_somIsInstanceOf
  239. #define somf_TSortedSequenceIterator_somRespondsTo SOMObject_somRespondsTo
  240. #define somf_TSortedSequenceIterator_somDispatch SOMObject_somDispatch
  241. #define somf_TSortedSequenceIterator_somClassDispatch SOMObject_somClassDispatch
  242. #define somf_TSortedSequenceIterator_somCastObj SOMObject_somCastObj
  243. #define somf_TSortedSequenceIterator_somResetObj SOMObject_somResetObj
  244. #define somf_TSortedSequenceIterator_somDispatchV SOMObject_somDispatchV
  245. #define somf_TSortedSequenceIterator_somDispatchL SOMObject_somDispatchL
  246. #define somf_TSortedSequenceIterator_somDispatchA SOMObject_somDispatchA
  247. #define somf_TSortedSequenceIterator_somDispatchD SOMObject_somDispatchD
  248. #define somf_TSortedSequenceIterator_somPrintSelf SOMObject_somPrintSelf
  249. #define somf_TSortedSequenceIterator_somDumpSelf SOMObject_somDumpSelf
  250. #define somf_TSortedSequenceIterator_somDumpSelfInt SOMObject_somDumpSelfInt
  251. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  252.  
  253. #endif       /* SOM_somf_TSortedSequenceIterator_h */
  254.