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

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: tseq.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_TSequence
  25.  * 
  26.  * DESCRIPTION: TSequence is an abstract superclass for collections whose
  27.  *              elements are ordered.
  28.  * 
  29.  */
  30.  
  31.  
  32. #ifndef SOM_somf_TSequence_h
  33. #define SOM_somf_TSequence_h
  34.  
  35.  
  36. /*
  37.  * Passthru lines: File: "C.h", "before"
  38.  */
  39.  
  40. #include <mcollect.h>
  41.  
  42. #include <som.h>
  43.  
  44. /*
  45.  * -- This emitter treats Method Tokens as Thunks by default.
  46.  * -- Use the sc modifier "nothunks" to change this default
  47.  */
  48. #undef somresolve_
  49. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  50.  
  51. /*
  52.  * Define the class name as an object type
  53.  */
  54. #ifndef somf_TSequence
  55. #define somf_TSequence SOMObject
  56. #endif
  57. #include <tcollect.h>
  58.  
  59. /*
  60.  * Start of bindings for IDL types
  61.  */
  62.  
  63. #ifndef SOMClass
  64.     #define SOMClass SOMObject
  65. #endif /* SOMClass */
  66. #ifndef somf_TIterator
  67.     #define somf_TIterator SOMObject
  68. #endif /* somf_TIterator */
  69.  
  70. /*
  71.  * End of bindings for IDL types.
  72.  */
  73.  
  74. #define somf_TSequence_MajorVersion 2
  75. #define somf_TSequence_MinorVersion 1
  76.  
  77. /*
  78.  * External name shortening if required
  79.  */
  80. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  81. #define somf_TSequenceNewClass c
  82. #pragma linkage(c, system)
  83. #define somf_TSequenceClassData d
  84. #define somf_TSequenceCClassData x
  85. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  86. /*--------------Migration------------*/
  87. #define somf_TSequence_classObj somf_TSequenceClassData.classObject
  88. #define _somf_TSequence somf_TSequence_classObj
  89.  
  90. /*
  91.  * Declare the class creation procedure
  92.  */
  93. SOMEXTERN SOMClass * SOMLINK somf_TSequenceNewClass(integer4 somtmajorVersion,
  94.         integer4 somtminorVersion);
  95. #pragma linkage(somf_TSequenceNewClass, system)
  96.  
  97. /*
  98.  * Declare the class data structure
  99.  */
  100. SOMEXTERN struct somf_TSequenceClassDataStructure {
  101.     SOMClass *classObject;
  102.     somMToken somfFirst;
  103.     somMToken somfAfter;
  104.     somMToken somfBefore;
  105.     somMToken somfLast;
  106.     somMToken somfOccurrencesOf;
  107.     somMToken somfTSequenceInit;
  108. } SOMDLINK somf_TSequenceClassData;
  109.  
  110. /*
  111.  * Declare the C specific class data structure
  112.  */
  113. SOMEXTERN struct somf_TSequenceCClassDataStructure {
  114.     somMethodTabs parentMtab;
  115.     somDToken instanceDataToken;
  116. } SOMDLINK somf_TSequenceCClassData;
  117.  
  118. /*
  119.  * New and Renew macros for somf_TSequence
  120.  */
  121. #define somf_TSequenceNew() \
  122.    ( _somf_TSequence ? \
  123.     _somNew(_somf_TSequence) \
  124.     : ( somf_TSequenceNewClass(\
  125.         somf_TSequence_MajorVersion, \
  126.         somf_TSequence_MinorVersion),\
  127.        _somNew(_somf_TSequence)))
  128. #define somf_TSequenceRenew(buf) \
  129.    ( _somf_TSequence ? \
  130.     _somRenew(_somf_TSequence, buf) \
  131.     : ( somf_TSequenceNewClass(\
  132.         somf_TSequence_MajorVersion, \
  133.         somf_TSequence_MinorVersion),\
  134.        _somRenew(_somf_TSequence, buf)))
  135.  
  136. /*
  137.  * Override method: somfAdd
  138.  */
  139. #define somf_TSequence_somfAdd(somSelf,ev,obj) \
  140.     somf_TCollection_somfAdd(somSelf,ev,obj)
  141.  
  142. /*
  143.  * Override method: somfRemove
  144.  */
  145. #define somf_TSequence_somfRemove(somSelf,ev,obj) \
  146.     somf_TCollection_somfRemove(somSelf,ev,obj)
  147.  
  148. /*
  149.  * Override method: somfRemoveAll
  150.  */
  151. #define somf_TSequence_somfRemoveAll(somSelf,ev) \
  152.     somf_TCollection_somfRemoveAll(somSelf,ev)
  153.  
  154. /*
  155.  * Override method: somfDeleteAll
  156.  */
  157. #define somf_TSequence_somfDeleteAll(somSelf,ev) \
  158.     somf_TCollection_somfDeleteAll(somSelf,ev)
  159.  
  160. /*
  161.  * Override method: somfCount
  162.  */
  163. #define somf_TSequence_somfCount(somSelf,ev) \
  164.     somf_TCollection_somfCount(somSelf,ev)
  165.  
  166. /*
  167.  * Override method: somfCreateIterator
  168.  */
  169. #define somf_TSequence_somfCreateIterator(somSelf,ev) \
  170.     somf_TCollection_somfCreateIterator(somSelf,ev)
  171.  
  172. /*
  173.  * Override method: somInit
  174.  */
  175. #define somf_TSequence_somInit(somSelf) \
  176.     SOMObject_somInit(somSelf)
  177.  
  178. /*
  179.  * New Method: somfAfter
  180.  */
  181. typedef somf_MCollectible*   SOMLINK somTP_somf_TSequence_somfAfter(somf_TSequence *somSelf, Environment *ev, 
  182.         somf_MCollectible* obj);
  183. #pragma linkage(somTP_somf_TSequence_somfAfter, system)
  184. typedef somTP_somf_TSequence_somfAfter *somTD_somf_TSequence_somfAfter;
  185. /*
  186.  *  Return the object found after obj.
  187.  */
  188. #define somMD_somf_TSequence_somfAfter "::somf_TSequence::somfAfter"
  189. #define somf_TSequence_somfAfter(somSelf,ev,obj) \
  190.     (SOM_Resolve(somSelf, somf_TSequence, somfAfter) \
  191.     (somSelf,ev,obj))
  192. #ifndef SOMGD_somfAfter
  193.     #if (defined(_somfAfter) || defined(__somfAfter))
  194.         #undef _somfAfter
  195.         #undef __somfAfter
  196.         #define SOMGD_somfAfter 1
  197.     #else
  198.         #define _somfAfter somf_TSequence_somfAfter
  199.     #endif /* _somfAfter */
  200. #endif /* SOMGD_somfAfter */
  201.  
  202. /*
  203.  * New Method: somfBefore
  204.  */
  205. typedef somf_MCollectible*   SOMLINK somTP_somf_TSequence_somfBefore(somf_TSequence *somSelf, Environment *ev, 
  206.         somf_MCollectible* obj);
  207. #pragma linkage(somTP_somf_TSequence_somfBefore, system)
  208. typedef somTP_somf_TSequence_somfBefore *somTD_somf_TSequence_somfBefore;
  209. /*
  210.  *  Return the object found before obj.
  211.  */
  212. #define somMD_somf_TSequence_somfBefore "::somf_TSequence::somfBefore"
  213. #define somf_TSequence_somfBefore(somSelf,ev,obj) \
  214.     (SOM_Resolve(somSelf, somf_TSequence, somfBefore) \
  215.     (somSelf,ev,obj))
  216. #ifndef SOMGD_somfBefore
  217.     #if (defined(_somfBefore) || defined(__somfBefore))
  218.         #undef _somfBefore
  219.         #undef __somfBefore
  220.         #define SOMGD_somfBefore 1
  221.     #else
  222.         #define _somfBefore somf_TSequence_somfBefore
  223.     #endif /* _somfBefore */
  224. #endif /* SOMGD_somfBefore */
  225.  
  226. /*
  227.  * New Method: somfLast
  228.  */
  229. typedef somf_MCollectible*   SOMLINK somTP_somf_TSequence_somfLast(somf_TSequence *somSelf, Environment *ev);
  230. #pragma linkage(somTP_somf_TSequence_somfLast, system)
  231. typedef somTP_somf_TSequence_somfLast *somTD_somf_TSequence_somfLast;
  232. /*
  233.  *  Determine the last object in this.
  234.  */
  235. #define somMD_somf_TSequence_somfLast "::somf_TSequence::somfLast"
  236. #define somf_TSequence_somfLast(somSelf,ev) \
  237.     (SOM_Resolve(somSelf, somf_TSequence, somfLast) \
  238.     (somSelf,ev))
  239. #ifndef SOMGD_somfLast
  240.     #if (defined(_somfLast) || defined(__somfLast))
  241.         #undef _somfLast
  242.         #undef __somfLast
  243.         #define SOMGD_somfLast 1
  244.     #else
  245.         #define _somfLast somf_TSequence_somfLast
  246.     #endif /* _somfLast */
  247. #endif /* SOMGD_somfLast */
  248.  
  249. /*
  250.  * New Method: somfFirst
  251.  */
  252. typedef somf_MCollectible*   SOMLINK somTP_somf_TSequence_somfFirst(somf_TSequence *somSelf, Environment *ev);
  253. #pragma linkage(somTP_somf_TSequence_somfFirst, system)
  254. typedef somTP_somf_TSequence_somfFirst *somTD_somf_TSequence_somfFirst;
  255. /*
  256.  *  Determine the first object in this.
  257.  */
  258. #define somMD_somf_TSequence_somfFirst "::somf_TSequence::somfFirst"
  259. #define somf_TSequence_somfFirst(somSelf,ev) \
  260.     (SOM_Resolve(somSelf, somf_TSequence, somfFirst) \
  261.     (somSelf,ev))
  262. #ifndef SOMGD_somfFirst
  263.     #if (defined(_somfFirst) || defined(__somfFirst))
  264.         #undef _somfFirst
  265.         #undef __somfFirst
  266.         #define SOMGD_somfFirst 1
  267.     #else
  268.         #define _somfFirst somf_TSequence_somfFirst
  269.     #endif /* _somfFirst */
  270. #endif /* SOMGD_somfFirst */
  271.  
  272. /*
  273.  * New Method: somfOccurrencesOf
  274.  */
  275. typedef long   SOMLINK somTP_somf_TSequence_somfOccurrencesOf(somf_TSequence *somSelf, Environment *ev, 
  276.         somf_MCollectible* obj);
  277. #pragma linkage(somTP_somf_TSequence_somfOccurrencesOf, system)
  278. typedef somTP_somf_TSequence_somfOccurrencesOf *somTD_somf_TSequence_somfOccurrencesOf;
  279. /*
  280.  *  Determine the number of times obj is in this.
  281.  */
  282. #define somMD_somf_TSequence_somfOccurrencesOf "::somf_TSequence::somfOccurrencesOf"
  283. #define somf_TSequence_somfOccurrencesOf(somSelf,ev,obj) \
  284.     (SOM_Resolve(somSelf, somf_TSequence, somfOccurrencesOf) \
  285.     (somSelf,ev,obj))
  286. #ifndef SOMGD_somfOccurrencesOf
  287.     #if (defined(_somfOccurrencesOf) || defined(__somfOccurrencesOf))
  288.         #undef _somfOccurrencesOf
  289.         #undef __somfOccurrencesOf
  290.         #define SOMGD_somfOccurrencesOf 1
  291.     #else
  292.         #define _somfOccurrencesOf somf_TSequence_somfOccurrencesOf
  293.     #endif /* _somfOccurrencesOf */
  294. #endif /* SOMGD_somfOccurrencesOf */
  295.  
  296. /*
  297.  * New Method: somfTSequenceInit
  298.  */
  299. typedef somf_TSequence*   SOMLINK somTP_somf_TSequence_somfTSequenceInit(somf_TSequence *somSelf, Environment *ev, 
  300.         somf_MCollectible_somf_MCollectibleCompareFn testfn);
  301. #pragma linkage(somTP_somf_TSequence_somfTSequenceInit, system)
  302. typedef somTP_somf_TSequence_somfTSequenceInit *somTD_somf_TSequence_somfTSequenceInit;
  303. /*
  304.  *  This method initializes a new TSequence.
  305.  */
  306. #define somMD_somf_TSequence_somfTSequenceInit "::somf_TSequence::somfTSequenceInit"
  307. #define somf_TSequence_somfTSequenceInit(somSelf,ev,testfn) \
  308.     (SOM_Resolve(somSelf, somf_TSequence, somfTSequenceInit) \
  309.     (somSelf,ev,testfn))
  310. #ifndef SOMGD_somfTSequenceInit
  311.     #if (defined(_somfTSequenceInit) || defined(__somfTSequenceInit))
  312.         #undef _somfTSequenceInit
  313.         #undef __somfTSequenceInit
  314.         #define SOMGD_somfTSequenceInit 1
  315.     #else
  316.         #define _somfTSequenceInit somf_TSequence_somfTSequenceInit
  317.     #endif /* _somfTSequenceInit */
  318. #endif /* SOMGD_somfTSequenceInit */
  319. #ifndef SOM_DONT_USE_INHERITED_MACROS
  320. #define somf_TSequence_somfAddAll somf_TCollection_somfAddAll
  321. #define somf_TSequence_somfMember somf_TCollection_somfMember
  322. #define somf_TSequence_somfTestFunction somf_TCollection_somfTestFunction
  323. #define somf_TSequence_somfSetTestFunction somf_TCollection_somfSetTestFunction
  324. #define somf_TSequence_somfTCollectionInit somf_TCollection_somfTCollectionInit
  325. #define somf_TSequence_somfIsEqual somf_MCollectible_somfIsEqual
  326. #define somf_TSequence_somfClone somf_MCollectible_somfClone
  327. #define somf_TSequence_somfClonePointer somf_MCollectible_somfClonePointer
  328. #define somf_TSequence_somfHash somf_MCollectible_somfHash
  329. #define somf_TSequence_somfIsSame somf_MCollectible_somfIsSame
  330. #define somf_TSequence_somfIsNotEqual somf_MCollectible_somfIsNotEqual
  331. #define somf_TSequence_somDefaultInit SOMObject_somDefaultInit
  332. #define somf_TSequence_somDestruct SOMObject_somDestruct
  333. #define somf_TSequence_somDefaultCopyInit SOMObject_somDefaultCopyInit
  334. #define somf_TSequence_somDefaultAssign SOMObject_somDefaultAssign
  335. #define somf_TSequence_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
  336. #define somf_TSequence_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
  337. #define somf_TSequence_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
  338. #define somf_TSequence_somDefaultConstAssign SOMObject_somDefaultConstAssign
  339. #define somf_TSequence_somDefaultVAssign SOMObject_somDefaultVAssign
  340. #define somf_TSequence_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
  341. #define somf_TSequence_somFree SOMObject_somFree
  342. #define somf_TSequence_somUninit SOMObject_somUninit
  343. #define somf_TSequence_somGetClass SOMObject_somGetClass
  344. #define somf_TSequence_somGetClassName SOMObject_somGetClassName
  345. #define somf_TSequence_somGetSize SOMObject_somGetSize
  346. #define somf_TSequence_somIsA SOMObject_somIsA
  347. #define somf_TSequence_somIsInstanceOf SOMObject_somIsInstanceOf
  348. #define somf_TSequence_somRespondsTo SOMObject_somRespondsTo
  349. #define somf_TSequence_somDispatch SOMObject_somDispatch
  350. #define somf_TSequence_somClassDispatch SOMObject_somClassDispatch
  351. #define somf_TSequence_somCastObj SOMObject_somCastObj
  352. #define somf_TSequence_somResetObj SOMObject_somResetObj
  353. #define somf_TSequence_somDispatchV SOMObject_somDispatchV
  354. #define somf_TSequence_somDispatchL SOMObject_somDispatchL
  355. #define somf_TSequence_somDispatchA SOMObject_somDispatchA
  356. #define somf_TSequence_somDispatchD SOMObject_somDispatchD
  357. #define somf_TSequence_somPrintSelf SOMObject_somPrintSelf
  358. #define somf_TSequence_somDumpSelf SOMObject_somDumpSelf
  359. #define somf_TSequence_somDumpSelfInt SOMObject_somDumpSelfInt
  360. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  361.  
  362. #endif       /* SOM_somf_TSequence_h */
  363.