home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / tolkit45.zip / os2tk45 / som / include / fma.xh < prev    next >
Text File  |  1999-02-22  |  44KB  |  1,373 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: fma.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emitxh: 2.47
  8.  */
  9.  
  10. /*
  11.  *    COMPONENT_NAME: somp
  12.  * 
  13.  *    ORIGINS: 27
  14.  * 
  15.  * 
  16.  *     25H7912  (C)  COPYRIGHT International Business Machines Corp. 1992,1994,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.  */
  23.  
  24.  
  25. #ifndef SOM_SOMPFileMediaAbstract_xh
  26. #define SOM_SOMPFileMediaAbstract_xh
  27.  
  28. class SOMPFileMediaAbstract;
  29.  
  30. /*
  31.  *  This is the abstract class definition for an interface to
  32.  *  a file media.
  33.  */
  34.  
  35. #define SOMPFileMediaAbstract_MajorVersion 2
  36. #define SOMPFileMediaAbstract_MinorVersion 1
  37.  
  38. /* C++ SOM defs */
  39. #include <somcls.xh>
  40. #include <somcm.xh>
  41.  
  42. /* C++ parent defs */
  43. #ifndef SOM_SOMPMediaInterfaceAbstract_xh
  44. #include <mia.xh>
  45. #endif
  46.  
  47. #ifndef SOMPFileMediaAbstract_API
  48. #define SOMPFileMediaAbstract_API
  49. /*
  50.  * -- The Class API
  51.  */
  52.  
  53. /*
  54.  * Start of bindings for IDL types
  55.  */
  56.  
  57. class SOMClass;
  58. class SOMObject;
  59.  
  60. /*
  61.  * End of bindings for IDL types.
  62.  */
  63.  
  64. /* A procedure to create the SOMPFileMediaAbstract Class */
  65. SOMEXTERN SOMClass * SOMLINK SOMPFileMediaAbstractNewClass(
  66.         integer4 majorVersion,
  67.         integer4 minorVersion);
  68.  
  69. /* The API to the SOMPFileMediaAbstract class object, and the methods it introduces. */
  70. SOMEXTERN struct SOMPFileMediaAbstractClassDataStructure {
  71.     SOMClass *classObject;
  72.     somMToken sompInitReadWrite;
  73.     somMToken sompInitReadOnly;
  74.     somMToken somReserved1;
  75.     somMToken somReserved2;
  76.     somMToken sompSeekPosition;
  77.     somMToken sompSeekPositionRel;
  78.     somMToken sompGetOffset;
  79.     somMToken sompReadBytes;
  80.     somMToken sompWriteBytes;
  81.     somMToken sompWriteOctet;
  82.     somMToken sompWriteShort;
  83.     somMToken sompWriteUnsignedShort;
  84.     somMToken sompWriteInteger;
  85.     somMToken sompWriteLong;
  86.     somMToken sompWriteUnsignedLong;
  87.     somMToken sompWriteDouble;
  88.     somMToken sompWriteFloat;
  89.     somMToken sompWriteCharacter;
  90.     somMToken sompWriteSomobject;
  91.     somMToken sompWriteString;
  92.     somMToken sompReadOctet;
  93.     somMToken sompReadShort;
  94.     somMToken sompReadUnsignedShort;
  95.     somMToken sompReadInteger;
  96.     somMToken sompReadLong;
  97.     somMToken sompReadUnsignedLong;
  98.     somMToken sompReadDouble;
  99.     somMToken sompReadFloat;
  100.     somMToken sompReadCharacter;
  101.     somMToken sompReadSomobject;
  102.     somMToken sompReadString;
  103.     somMToken sompReadStringToBuffer;
  104.     somMToken sompWriteLine;
  105.     somMToken sompReadLine;
  106.     somMToken sompWriteTypeCode;
  107.     somMToken sompReadTypeCode;
  108. } SOMDLINK SOMPFileMediaAbstractClassData;
  109. #define _SOMPFileMediaAbstract SOMPFileMediaAbstractClassData.classObject
  110.  
  111. /* The API to parentMtabs for SOMPFileMediaAbstract, and the instance data it introduces. */
  112. SOMEXTERN struct SOMPFileMediaAbstractCClassDataStructure {
  113.     somMethodTabs parentMtab;
  114.     somDToken              instanceDataToken;
  115. } SOMDLINK SOMPFileMediaAbstractCClassData;
  116.  
  117. /*
  118.  * -- Typedefs for SOMPFileMediaAbstract Method Procedures
  119.  */
  120. SOMEXTERN {
  121. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompInitReadWrite(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  122.         string mediaInfo);
  123. typedef somTP_SOMPFileMediaAbstract_sompInitReadWrite *somTD_SOMPFileMediaAbstract_sompInitReadWrite;
  124. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompInitReadOnly(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  125.         string mediaInfo);
  126. typedef somTP_SOMPFileMediaAbstract_sompInitReadOnly *somTD_SOMPFileMediaAbstract_sompInitReadOnly;
  127. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompSeekPosition(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  128.         long offset);
  129. typedef somTP_SOMPFileMediaAbstract_sompSeekPosition *somTD_SOMPFileMediaAbstract_sompSeekPosition;
  130. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompSeekPositionRel(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  131.         long offset);
  132. typedef somTP_SOMPFileMediaAbstract_sompSeekPositionRel *somTD_SOMPFileMediaAbstract_sompSeekPositionRel;
  133. typedef long   SOMLINK somTP_SOMPFileMediaAbstract_sompGetOffset(SOMPFileMediaAbstract *somSelf, Environment *ev);
  134. typedef somTP_SOMPFileMediaAbstract_sompGetOffset *somTD_SOMPFileMediaAbstract_sompGetOffset;
  135. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadBytes(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  136.         string byteStream, 
  137.         long length);
  138. typedef somTP_SOMPFileMediaAbstract_sompReadBytes *somTD_SOMPFileMediaAbstract_sompReadBytes;
  139. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteBytes(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  140.         string byteStream, 
  141.         long length);
  142. typedef somTP_SOMPFileMediaAbstract_sompWriteBytes *somTD_SOMPFileMediaAbstract_sompWriteBytes;
  143. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteOctet(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  144.         octet i1);
  145. typedef somTP_SOMPFileMediaAbstract_sompWriteOctet *somTD_SOMPFileMediaAbstract_sompWriteOctet;
  146. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteShort(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  147.         short i2);
  148. typedef somTP_SOMPFileMediaAbstract_sompWriteShort *somTD_SOMPFileMediaAbstract_sompWriteShort;
  149. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteUnsignedShort(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  150.         unsigned short u2);
  151. typedef somTP_SOMPFileMediaAbstract_sompWriteUnsignedShort *somTD_SOMPFileMediaAbstract_sompWriteUnsignedShort;
  152. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteLong(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  153.         long i4);
  154. typedef somTP_SOMPFileMediaAbstract_sompWriteLong *somTD_SOMPFileMediaAbstract_sompWriteLong;
  155. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteUnsignedLong(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  156.         unsigned long u4);
  157. typedef somTP_SOMPFileMediaAbstract_sompWriteUnsignedLong *somTD_SOMPFileMediaAbstract_sompWriteUnsignedLong;
  158. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteDouble(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  159.         double f8);
  160. typedef somTP_SOMPFileMediaAbstract_sompWriteDouble *somTD_SOMPFileMediaAbstract_sompWriteDouble;
  161. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteFloat(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  162.         float f4);
  163. typedef somTP_SOMPFileMediaAbstract_sompWriteFloat *somTD_SOMPFileMediaAbstract_sompWriteFloat;
  164. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteCharacter(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  165.         char c);
  166. typedef somTP_SOMPFileMediaAbstract_sompWriteCharacter *somTD_SOMPFileMediaAbstract_sompWriteCharacter;
  167. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteSomobject(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  168.         SOMObject* so, 
  169.         SOMObject* parentObject);
  170. typedef somTP_SOMPFileMediaAbstract_sompWriteSomobject *somTD_SOMPFileMediaAbstract_sompWriteSomobject;
  171. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteString(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  172.         string wstring);
  173. typedef somTP_SOMPFileMediaAbstract_sompWriteString *somTD_SOMPFileMediaAbstract_sompWriteString;
  174. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadOctet(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  175.         octet* i1);
  176. typedef somTP_SOMPFileMediaAbstract_sompReadOctet *somTD_SOMPFileMediaAbstract_sompReadOctet;
  177. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadShort(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  178.         short* i2);
  179. typedef somTP_SOMPFileMediaAbstract_sompReadShort *somTD_SOMPFileMediaAbstract_sompReadShort;
  180. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadUnsignedShort(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  181.         unsigned short* u2);
  182. typedef somTP_SOMPFileMediaAbstract_sompReadUnsignedShort *somTD_SOMPFileMediaAbstract_sompReadUnsignedShort;
  183. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadLong(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  184.         long* i4);
  185. typedef somTP_SOMPFileMediaAbstract_sompReadLong *somTD_SOMPFileMediaAbstract_sompReadLong;
  186. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadUnsignedLong(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  187.         unsigned long* i4);
  188. typedef somTP_SOMPFileMediaAbstract_sompReadUnsignedLong *somTD_SOMPFileMediaAbstract_sompReadUnsignedLong;
  189. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadDouble(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  190.         double* f8);
  191. typedef somTP_SOMPFileMediaAbstract_sompReadDouble *somTD_SOMPFileMediaAbstract_sompReadDouble;
  192. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadFloat(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  193.         float* f4);
  194. typedef somTP_SOMPFileMediaAbstract_sompReadFloat *somTD_SOMPFileMediaAbstract_sompReadFloat;
  195. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadCharacter(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  196.         char* c);
  197. typedef somTP_SOMPFileMediaAbstract_sompReadCharacter *somTD_SOMPFileMediaAbstract_sompReadCharacter;
  198. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadSomobject(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  199.         SOMObject** so);
  200. typedef somTP_SOMPFileMediaAbstract_sompReadSomobject *somTD_SOMPFileMediaAbstract_sompReadSomobject;
  201. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadString(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  202.         string* rstring);
  203. typedef somTP_SOMPFileMediaAbstract_sompReadString *somTD_SOMPFileMediaAbstract_sompReadString;
  204. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadStringToBuffer(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  205.         string buffer, 
  206.         long bufsize);
  207. typedef somTP_SOMPFileMediaAbstract_sompReadStringToBuffer *somTD_SOMPFileMediaAbstract_sompReadStringToBuffer;
  208. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteLine(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  209.         string buffer);
  210. typedef somTP_SOMPFileMediaAbstract_sompWriteLine *somTD_SOMPFileMediaAbstract_sompWriteLine;
  211. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadLine(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  212.         string buffer, 
  213.         long bufsize);
  214. typedef somTP_SOMPFileMediaAbstract_sompReadLine *somTD_SOMPFileMediaAbstract_sompReadLine;
  215. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteTypeCode(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  216.         TypeCode tc);
  217. typedef somTP_SOMPFileMediaAbstract_sompWriteTypeCode *somTD_SOMPFileMediaAbstract_sompWriteTypeCode;
  218. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadTypeCode(SOMPFileMediaAbstract *somSelf, Environment *ev, 
  219.         TypeCode* tc);
  220. typedef somTP_SOMPFileMediaAbstract_sompReadTypeCode *somTD_SOMPFileMediaAbstract_sompReadTypeCode;
  221.  
  222. /*
  223.  * -- Typedefs for Reintroduced Wrapper Methods
  224.  */
  225. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompOpen(SOMPFileMediaAbstract *somSelf, Environment *ev);
  226. typedef somTP_SOMPFileMediaAbstract_sompOpen *somTD_SOMPFileMediaAbstract_sompOpen;
  227. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompClose(SOMPFileMediaAbstract *somSelf, Environment *ev);
  228. typedef somTP_SOMPFileMediaAbstract_sompClose *somTD_SOMPFileMediaAbstract_sompClose;
  229. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultInit(SOMPFileMediaAbstract *somSelf, 
  230.         som3InitCtrl* ctrl);
  231. typedef somTP_SOMPFileMediaAbstract_somDefaultInit *somTD_SOMPFileMediaAbstract_somDefaultInit;
  232. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDestruct(SOMPFileMediaAbstract *somSelf, 
  233.         octet doFree, 
  234.         som3DestructCtrl* ctrl);
  235. typedef somTP_SOMPFileMediaAbstract_somDestruct *somTD_SOMPFileMediaAbstract_somDestruct;
  236. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultCopyInit(SOMPFileMediaAbstract *somSelf, 
  237.         som3InitCtrl* ctrl, 
  238.         SOMObject* fromObj);
  239. typedef somTP_SOMPFileMediaAbstract_somDefaultCopyInit *somTD_SOMPFileMediaAbstract_somDefaultCopyInit;
  240. typedef SOMPFileMediaAbstract*   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultAssign(SOMPFileMediaAbstract *somSelf, 
  241.         som3AssignCtrl* ctrl, 
  242.         SOMObject* fromObj);
  243. typedef somTP_SOMPFileMediaAbstract_somDefaultAssign *somTD_SOMPFileMediaAbstract_somDefaultAssign;
  244. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultConstCopyInit(SOMPFileMediaAbstract *somSelf, 
  245.         som3InitCtrl* ctrl, 
  246.         SOMObject* fromObj);
  247. typedef somTP_SOMPFileMediaAbstract_somDefaultConstCopyInit *somTD_SOMPFileMediaAbstract_somDefaultConstCopyInit;
  248. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultVCopyInit(SOMPFileMediaAbstract *somSelf, 
  249.         som3InitCtrl* ctrl, 
  250.         SOMObject* fromObj);
  251. typedef somTP_SOMPFileMediaAbstract_somDefaultVCopyInit *somTD_SOMPFileMediaAbstract_somDefaultVCopyInit;
  252. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultConstVCopyInit(SOMPFileMediaAbstract *somSelf, 
  253.         som3InitCtrl* ctrl, 
  254.         SOMObject* fromObj);
  255. typedef somTP_SOMPFileMediaAbstract_somDefaultConstVCopyInit *somTD_SOMPFileMediaAbstract_somDefaultConstVCopyInit;
  256. typedef SOMPFileMediaAbstract*   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultConstAssign(SOMPFileMediaAbstract *somSelf, 
  257.         som3AssignCtrl* ctrl, 
  258.         SOMObject* fromObj);
  259. typedef somTP_SOMPFileMediaAbstract_somDefaultConstAssign *somTD_SOMPFileMediaAbstract_somDefaultConstAssign;
  260. typedef SOMPFileMediaAbstract*   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultVAssign(SOMPFileMediaAbstract *somSelf, 
  261.         som3AssignCtrl* ctrl, 
  262.         SOMObject* fromObj);
  263. typedef somTP_SOMPFileMediaAbstract_somDefaultVAssign *somTD_SOMPFileMediaAbstract_somDefaultVAssign;
  264. typedef SOMPFileMediaAbstract*   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultConstVAssign(SOMPFileMediaAbstract *somSelf, 
  265.         som3AssignCtrl* ctrl, 
  266.         SOMObject* fromObj);
  267. typedef somTP_SOMPFileMediaAbstract_somDefaultConstVAssign *somTD_SOMPFileMediaAbstract_somDefaultConstVAssign;
  268. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somInit(SOMPFileMediaAbstract *somSelf);
  269. typedef somTP_SOMPFileMediaAbstract_somInit *somTD_SOMPFileMediaAbstract_somInit;
  270. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somFree(SOMPFileMediaAbstract *somSelf);
  271. typedef somTP_SOMPFileMediaAbstract_somFree *somTD_SOMPFileMediaAbstract_somFree;
  272. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somUninit(SOMPFileMediaAbstract *somSelf);
  273. typedef somTP_SOMPFileMediaAbstract_somUninit *somTD_SOMPFileMediaAbstract_somUninit;
  274. typedef SOMClass*   SOMLINK somTP_SOMPFileMediaAbstract_somGetClass(SOMPFileMediaAbstract *somSelf);
  275. typedef somTP_SOMPFileMediaAbstract_somGetClass *somTD_SOMPFileMediaAbstract_somGetClass;
  276. typedef string   SOMLINK somTP_SOMPFileMediaAbstract_somGetClassName(SOMPFileMediaAbstract *somSelf);
  277. typedef somTP_SOMPFileMediaAbstract_somGetClassName *somTD_SOMPFileMediaAbstract_somGetClassName;
  278. typedef long   SOMLINK somTP_SOMPFileMediaAbstract_somGetSize(SOMPFileMediaAbstract *somSelf);
  279. typedef somTP_SOMPFileMediaAbstract_somGetSize *somTD_SOMPFileMediaAbstract_somGetSize;
  280. typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somIsA(SOMPFileMediaAbstract *somSelf, 
  281.         SOMClass* aClassObj);
  282. typedef somTP_SOMPFileMediaAbstract_somIsA *somTD_SOMPFileMediaAbstract_somIsA;
  283. typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somIsInstanceOf(SOMPFileMediaAbstract *somSelf, 
  284.         SOMClass* aClassObj);
  285. typedef somTP_SOMPFileMediaAbstract_somIsInstanceOf *somTD_SOMPFileMediaAbstract_somIsInstanceOf;
  286. typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somRespondsTo(SOMPFileMediaAbstract *somSelf, 
  287.         somId mId);
  288. typedef somTP_SOMPFileMediaAbstract_somRespondsTo *somTD_SOMPFileMediaAbstract_somRespondsTo;
  289. typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somDispatch(SOMPFileMediaAbstract *somSelf, 
  290.         somToken* retValue, 
  291.         somId methodId, 
  292.         va_list ap);
  293. typedef somTP_SOMPFileMediaAbstract_somDispatch *somTD_SOMPFileMediaAbstract_somDispatch;
  294. typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somClassDispatch(SOMPFileMediaAbstract *somSelf, 
  295.         SOMClass* clsObj, 
  296.         somToken* retValue, 
  297.         somId methodId, 
  298.         va_list ap);
  299. typedef somTP_SOMPFileMediaAbstract_somClassDispatch *somTD_SOMPFileMediaAbstract_somClassDispatch;
  300. typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somCastObj(SOMPFileMediaAbstract *somSelf, 
  301.         SOMClass* cls);
  302. typedef somTP_SOMPFileMediaAbstract_somCastObj *somTD_SOMPFileMediaAbstract_somCastObj;
  303. typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somResetObj(SOMPFileMediaAbstract *somSelf);
  304. typedef somTP_SOMPFileMediaAbstract_somResetObj *somTD_SOMPFileMediaAbstract_somResetObj;
  305. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDispatchV(SOMPFileMediaAbstract *somSelf, 
  306.         somId methodId, 
  307.         somId descriptor, 
  308.         va_list ap);
  309. typedef somTP_SOMPFileMediaAbstract_somDispatchV *somTD_SOMPFileMediaAbstract_somDispatchV;
  310. typedef long   SOMLINK somTP_SOMPFileMediaAbstract_somDispatchL(SOMPFileMediaAbstract *somSelf, 
  311.         somId methodId, 
  312.         somId descriptor, 
  313.         va_list ap);
  314. typedef somTP_SOMPFileMediaAbstract_somDispatchL *somTD_SOMPFileMediaAbstract_somDispatchL;
  315. typedef void*   SOMLINK somTP_SOMPFileMediaAbstract_somDispatchA(SOMPFileMediaAbstract *somSelf, 
  316.         somId methodId, 
  317.         somId descriptor, 
  318.         va_list ap);
  319. typedef somTP_SOMPFileMediaAbstract_somDispatchA *somTD_SOMPFileMediaAbstract_somDispatchA;
  320. typedef double   SOMLINK somTP_SOMPFileMediaAbstract_somDispatchD(SOMPFileMediaAbstract *somSelf, 
  321.         somId methodId, 
  322.         somId descriptor, 
  323.         va_list ap);
  324. typedef somTP_SOMPFileMediaAbstract_somDispatchD *somTD_SOMPFileMediaAbstract_somDispatchD;
  325. typedef SOMObject*   SOMLINK somTP_SOMPFileMediaAbstract_somPrintSelf(SOMPFileMediaAbstract *somSelf);
  326. typedef somTP_SOMPFileMediaAbstract_somPrintSelf *somTD_SOMPFileMediaAbstract_somPrintSelf;
  327. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDumpSelf(SOMPFileMediaAbstract *somSelf, 
  328.         long level);
  329. typedef somTP_SOMPFileMediaAbstract_somDumpSelf *somTD_SOMPFileMediaAbstract_somDumpSelf;
  330. typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDumpSelfInt(SOMPFileMediaAbstract *somSelf, 
  331.         long level);
  332. typedef somTP_SOMPFileMediaAbstract_somDumpSelfInt *somTD_SOMPFileMediaAbstract_somDumpSelfInt;
  333. }
  334.  
  335. #endif /* SOMPFileMediaAbstract_API */
  336.  
  337.  
  338. /*
  339.  * -- This emitter treats Method Tokens as Thunks by default.
  340.  * -- Use the sc modifier "nothunks" to change this default
  341.  */
  342. #undef somresolve_
  343. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  344.  
  345. /*
  346.  * -- The C++ Wrapper Class for SOMPFileMediaAbstract
  347.  */
  348. class SOMPFileMediaAbstract : public SOMPMediaInterfaceAbstract
  349. {
  350. /*
  351.  *  This is the abstract class definition for an interface to
  352.  *  a file media.
  353.  */
  354. public:
  355.  
  356. // SOMPFileMediaAbstract::new creates the class object if necessary, and then uses somNewNoInit
  357. // to allocate memory and create the object. Initialization is in ctors.
  358. void *operator new(size_t)
  359. {
  360.    if (!_SOMPFileMediaAbstract) SOMPFileMediaAbstractNewClass(SOMPFileMediaAbstract_MajorVersion,SOMPFileMediaAbstract_MinorVersion);
  361.    return (void*)
  362.       SOM_Resolve(_SOMPFileMediaAbstract,SOMClass,somNewNoInit)
  363.          ((SOMClass *)((void*)_SOMPFileMediaAbstract));
  364. }
  365.  
  366. // SOMPFileMediaAbstract::delete uses somDestruct.
  367. void operator delete(void * obj)
  368. {
  369.    if (obj && *(void**)obj) {
  370.       SOM_Resolve(obj,SOMObject,somFree)
  371.          ((SOMObject*)obj);
  372.    }
  373. }
  374.  
  375. SOMPFileMediaAbstract& operator=(SOMPFileMediaAbstract& fromObj)
  376. {
  377.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  378.    return *this;
  379. }
  380.  
  381. SOMPFileMediaAbstract()
  382. {
  383.    if (*(void**)this != 
  384.        ((somParentMtabStructPtr)
  385.         (SOMPFileMediaAbstractCClassData.parentMtab))->mtab)
  386.       return;
  387.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  388. }
  389.  
  390. SOMPFileMediaAbstract(SOMPFileMediaAbstract* fromObj)
  391. {
  392.    if (*(void**)this != 
  393.        ((somParentMtabStructPtr)
  394.         (SOMPFileMediaAbstractCClassData.parentMtab))->mtab)
  395.       return;
  396.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  397. }
  398.  
  399. #ifdef __IBMCPP__
  400. #pragma info(nocnv,nopar)
  401. #endif
  402. SOMPFileMediaAbstract(const SOMPFileMediaAbstract* fromObj)
  403. {
  404.    if (*(void**)this != 
  405.        ((somParentMtabStructPtr)
  406.         (SOMPFileMediaAbstractCClassData.parentMtab))->mtab)
  407.       return;
  408.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  409. }
  410. #ifdef __IBMCPP__
  411. #pragma info(restore)
  412. #endif
  413.  
  414.  
  415. /* method: sompInitReadWrite */
  416. void   sompInitReadWrite(Environment *ev, 
  417.         string mediaInfo)
  418. {
  419. /*
  420.  *  Initialize the media interface for read-write access.
  421.  */
  422.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompInitReadWrite)
  423.     (this, ev,mediaInfo);
  424. }
  425.  
  426.  
  427. /* method: sompInitReadOnly */
  428. void   sompInitReadOnly(Environment *ev, 
  429.         string mediaInfo)
  430. {
  431. /*
  432.  *  Initialize the media interface for read-only access.
  433.  */
  434.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompInitReadOnly)
  435.     (this, ev,mediaInfo);
  436. }
  437.  
  438.  
  439. /* method: sompSeekPosition */
  440. void   sompSeekPosition(Environment *ev, 
  441.         long offset)
  442. {
  443. /*
  444.  *  Position the media to an offset.  Any further reading
  445.  *  or writing will begin from that point.  Reading and writing
  446.  *  implicitly repositions the file, so usually this is not needed.
  447.  */
  448.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompSeekPosition)
  449.     (this, ev,offset);
  450. }
  451.  
  452.  
  453. /* method: sompSeekPositionRel */
  454. void   sompSeekPositionRel(Environment *ev, 
  455.         long offset)
  456. {
  457. /*
  458.  *  Like Position, but offset is relative to current.
  459.  */
  460.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompSeekPositionRel)
  461.     (this, ev,offset);
  462. }
  463.  
  464.  
  465. /* method: sompGetOffset */
  466. long   sompGetOffset(Environment *ev)
  467. {
  468. /*
  469.  *  Returns the current offset within the file.
  470.  */
  471.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompGetOffset)
  472.     (this, ev);
  473. }
  474.  
  475.  
  476. /* method: sompReadBytes */
  477. void   sompReadBytes(Environment *ev, 
  478.         string byteStream, 
  479.         long length)
  480. {
  481. /*
  482.  *  Read a byte stream of the given length from the media.
  483.  */
  484.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadBytes)
  485.     (this, ev,byteStream,length);
  486. }
  487.  
  488.  
  489. /* method: sompWriteBytes */
  490. void   sompWriteBytes(Environment *ev, 
  491.         string byteStream, 
  492.         long length)
  493. {
  494. /*
  495.  *  Write a byte stream of the given length to the media.
  496.  */
  497.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteBytes)
  498.     (this, ev,byteStream,length);
  499. }
  500.  
  501.  
  502. /* method: sompWriteOctet */
  503. void   sompWriteOctet(Environment *ev, 
  504.         octet i1)
  505. {
  506. /*
  507.  *  Writes the given 8-bit integer
  508.  */
  509.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteOctet)
  510.     (this, ev,i1);
  511. }
  512.  
  513.  
  514. /* method: sompWriteShort */
  515. void   sompWriteShort(Environment *ev, 
  516.         short i2)
  517. {
  518. /*
  519.  *  Writes the given short integer
  520.  */
  521.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteShort)
  522.     (this, ev,i2);
  523. }
  524.  
  525.  
  526. /* method: sompWriteUnsignedShort */
  527. void   sompWriteUnsignedShort(Environment *ev, 
  528.         unsigned short u2)
  529. {
  530. /*
  531.  *  Writes the given unsigned short integer
  532.  */
  533.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteUnsignedShort)
  534.     (this, ev,u2);
  535. }
  536.  
  537.  
  538. /* method: sompWriteLong */
  539. void   sompWriteLong(Environment *ev, 
  540.         long i4)
  541. {
  542. /*
  543.  *  Writes the given long integer
  544.  */
  545.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteLong)
  546.     (this, ev,i4);
  547. }
  548.  
  549.  
  550. /* method: sompWriteUnsignedLong */
  551. void   sompWriteUnsignedLong(Environment *ev, 
  552.         unsigned long u4)
  553. {
  554. /*
  555.  *  Writes the given unsigned long integer
  556.  */
  557.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteUnsignedLong)
  558.     (this, ev,u4);
  559. }
  560.  
  561.  
  562. /* method: sompWriteDouble */
  563. void   sompWriteDouble(Environment *ev, 
  564.         double f8)
  565. {
  566. /*
  567.  *  Writes the given double-precision float
  568.  */
  569.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteDouble)
  570.     (this, ev,f8);
  571. }
  572.  
  573.  
  574. /* method: sompWriteFloat */
  575. void   sompWriteFloat(Environment *ev, 
  576.         float f4)
  577. {
  578. /*
  579.  *  Writes the given float
  580.  */
  581.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteFloat)
  582.     (this, ev,f4);
  583. }
  584.  
  585.  
  586. /* method: sompWriteCharacter */
  587. void   sompWriteCharacter(Environment *ev, 
  588.         char c)
  589. {
  590. /*
  591.  *  Writes the given character
  592.  */
  593.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteCharacter)
  594.     (this, ev,c);
  595. }
  596.  
  597.  
  598. /* method: sompWriteSomobject */
  599. void   sompWriteSomobject(Environment *ev, 
  600.         SOMObject* so, 
  601.         SOMObject* parentObject)
  602. {
  603. /*
  604.  *  Writes the given object.  Uses parentObject to determine whether relative
  605.  *  Ids are used.  If object (so) has no persistent parent, client passes
  606.  *  NULL parentObject.
  607.  */
  608.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteSomobject)
  609.     (this, ev,so,parentObject);
  610. }
  611.  
  612.  
  613. /* method: sompWriteString */
  614. void   sompWriteString(Environment *ev, 
  615.         string wstring)
  616. {
  617. /*
  618.  *  Writes the given string to the media.
  619.  * 
  620.  */
  621.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteString)
  622.     (this, ev,wstring);
  623. }
  624.  
  625.  
  626. /* method: sompReadOctet */
  627. void   sompReadOctet(Environment *ev, 
  628.         octet* i1)
  629. {
  630. /*
  631.  *  Reads an 8-bit integer into memory at given the pointer
  632.  */
  633.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadOctet)
  634.     (this, ev,i1);
  635. }
  636.  
  637.  
  638. /* method: sompReadShort */
  639. void   sompReadShort(Environment *ev, 
  640.         short* i2)
  641. {
  642. /*
  643.  *  Reads a short integer into memory at given the pointer
  644.  */
  645.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadShort)
  646.     (this, ev,i2);
  647. }
  648.  
  649.  
  650. /* method: sompReadUnsignedShort */
  651. void   sompReadUnsignedShort(Environment *ev, 
  652.         unsigned short* u2)
  653. {
  654. /*
  655.  *  Reads an unsigned short integer into memory at given the pointer
  656.  */
  657.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadUnsignedShort)
  658.     (this, ev,u2);
  659. }
  660.  
  661.  
  662. /* method: sompReadLong */
  663. void   sompReadLong(Environment *ev, 
  664.         long* i4)
  665. {
  666. /*
  667.  *  Reads a long integer into memory at given the pointer
  668.  */
  669.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadLong)
  670.     (this, ev,i4);
  671. }
  672.  
  673.  
  674. /* method: sompReadUnsignedLong */
  675. void   sompReadUnsignedLong(Environment *ev, 
  676.         unsigned long* i4)
  677. {
  678. /*
  679.  *  Reads a long integer into memory at given the pointer
  680.  */
  681.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadUnsignedLong)
  682.     (this, ev,i4);
  683. }
  684.  
  685.  
  686. /* method: sompReadDouble */
  687. void   sompReadDouble(Environment *ev, 
  688.         double* f8)
  689. {
  690. /*
  691.  *  Reads a float into memory at given the pointer
  692.  */
  693.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadDouble)
  694.     (this, ev,f8);
  695. }
  696.  
  697.  
  698. /* method: sompReadFloat */
  699. void   sompReadFloat(Environment *ev, 
  700.         float* f4)
  701. {
  702. /*
  703.  *  Reads a float into memory at given the pointer
  704.  */
  705.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadFloat)
  706.     (this, ev,f4);
  707. }
  708.  
  709.  
  710. /* method: sompReadCharacter */
  711. void   sompReadCharacter(Environment *ev, 
  712.         char* c)
  713. {
  714. /*
  715.  *  Reads a character into memory at given the pointer
  716.  */
  717.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadCharacter)
  718.     (this, ev,c);
  719. }
  720.  
  721.  
  722. /* method: sompReadSomobject */
  723. void   sompReadSomobject(Environment *ev, 
  724.         SOMObject** so)
  725. {
  726. /*
  727.  *  Instantiates and returns a new object of the class specified in
  728.  *  the file. Standard SOM objects are simply instantiated. Persistent
  729.  *  objects are instantiated and marked for restoration.
  730.  */
  731.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadSomobject)
  732.     (this, ev,so);
  733. }
  734.  
  735.  
  736. /* method: sompReadString */
  737. void   sompReadString(Environment *ev, 
  738.         string* rstring)
  739. {
  740. /*
  741.  *  Read and allocate a string. Input is a pointer to a string. The input
  742.  *  pointer is modified to point to a newly allocated buffer which
  743.  *  will contain the string read from the media.
  744.  *  Callers are responsible for freeing the returned buffer with SOMFree.
  745.  *  If you want to read a string into a predefined buffer,
  746.  *  use sompReadStringToBuffer.
  747.  * 
  748.  *  This method can be used to read strings which were stored by
  749.  *  sompWriteString.
  750.  */
  751.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadString)
  752.     (this, ev,rstring);
  753. }
  754.  
  755.  
  756. /* method: sompReadStringToBuffer */
  757. void   sompReadStringToBuffer(Environment *ev, 
  758.         string buffer, 
  759.         long bufsize)
  760. {
  761. /*
  762.  *  Read a string into the preallocated buffer given. The size of the
  763.  *  buffer is given in <bufsize>. If the string read is larger than
  764.  *  bufsize it is truncated to fit in bufsize.
  765.  * 
  766.  *  This method can be used to read strings which were stored by
  767.  *  sompWriteString.
  768.  */
  769.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadStringToBuffer)
  770.     (this, ev,buffer,bufsize);
  771. }
  772.  
  773.  
  774. /* method: sompWriteLine */
  775. void   sompWriteLine(Environment *ev, 
  776.         string buffer)
  777. {
  778. /*
  779.  *  Writes the given string in <buffer> at the current position.
  780.  *  The terminating null character (\0) is not written.
  781.  * 
  782.  *  This method does NOT append a newline character (\n) to the
  783.  *  given string before writing. If the user of this method intends to
  784.  *  restore this <buffer> of data with sompReadLine, the user must
  785.  *  put the newline character in the <buffer> before calling this
  786.  *  method.
  787.  */
  788.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteLine)
  789.     (this, ev,buffer);
  790. }
  791.  
  792.  
  793. /* method: sompReadLine */
  794. void   sompReadLine(Environment *ev, 
  795.         string buffer, 
  796.         long bufsize)
  797. {
  798. /*
  799.  *  Read a string up to and including the first newline character (\n)
  800.  *  into the preallocated buffer given.
  801.  *  Use this method for reading strings stored with sompWriteLine.
  802.  * 
  803.  *  The size of the buffer is given in <bufsize>. If the string read is
  804.  *  larger than bufsize it is truncated to fit in bufsize.
  805.  * 
  806.  *  The characters read are stored in <buffer>, and a null character (\0)
  807.  *  is appended. The newline character, if read, is included in the string.
  808.  */
  809.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadLine)
  810.     (this, ev,buffer,bufsize);
  811. }
  812.  
  813.  
  814. /* method: sompWriteTypeCode */
  815. void   sompWriteTypeCode(Environment *ev, 
  816.         TypeCode tc)
  817. {
  818. /*
  819.  *  Writes a restoreable version of an IDL type code. Restore with
  820.  *  sompReadTypeCode().
  821.  */
  822.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteTypeCode)
  823.     (this, ev,tc);
  824. }
  825.  
  826.  
  827. /* method: sompReadTypeCode */
  828. void   sompReadTypeCode(Environment *ev, 
  829.         TypeCode* tc)
  830. {
  831. /*
  832.  *  Restores an IDL type code that was stored with sompWriteTypeCode().
  833.  */
  834.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadTypeCode)
  835.     (this, ev,tc);
  836. }
  837.  
  838.  
  839. /*
  840.  * Reintroduce inherited methods
  841.  */
  842.  
  843. /* method: sompOpen */
  844. void   sompOpen(Environment *ev)
  845. {
  846. /*
  847.  *  Open the media interface.
  848.  */
  849.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPMediaInterfaceAbstract,sompOpen)
  850.     (this, ev);
  851. }
  852.  
  853.  
  854. /* method: sompClose */
  855. void   sompClose(Environment *ev)
  856. {
  857. /*
  858.  *  Close the media interface.
  859.  */
  860.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPMediaInterfaceAbstract,sompClose)
  861.     (this, ev);
  862. }
  863.  
  864.  
  865. /* initializer method: somDefaultInit */
  866. void   somDefaultInit(som3InitCtrl* ctrl)
  867. {
  868. /*
  869.  *  A default initializer for a SOM object. Passing a null ctrl
  870.  *  indicates to the receiver that its class is the class of the
  871.  *  object being initialized, whereby the initializer will determine
  872.  *  an appropriate control structure.
  873.  */
  874.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultInit)
  875.     (this,ctrl);
  876. }
  877.  
  878.  
  879. /* method: somDestruct */
  880. void   somDestruct(octet doFree, 
  881.         som3DestructCtrl* ctrl)
  882. {
  883. /*
  884.  *  The default destructor for a SOM object. A nonzero <doFree>
  885.  *  indicates that the object storage should be freed by the
  886.  *  object's class (via somDeallocate) after uninitialization.
  887.  *  As with somDefaultInit, a null ctrl can be passed.
  888.  */
  889.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDestruct)
  890.     (this,doFree,ctrl);
  891. }
  892.  
  893.  
  894. /* initializer method: somDefaultCopyInit */
  895. void   somDefaultCopyInit(som3InitCtrl* ctrl, 
  896.         SOMObject* fromObj)
  897. {
  898. /*
  899.  *  A default copy constructor. Use this to make copies of objects for
  900.  *  calling methods with "by-value" argument semantics.
  901.  */
  902.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultCopyInit)
  903.     (this,ctrl,fromObj);
  904. }
  905.  
  906.  
  907. /* method: somDefaultAssign */
  908. SOMPFileMediaAbstract*  somDefaultAssign(som3AssignCtrl* ctrl, 
  909.         SOMObject* fromObj)
  910. {
  911. /*
  912.  *  A default assignment operator. Use this to "assign" the state of one
  913.  *  object to another.
  914.  */
  915.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultAssign)
  916.     (this,ctrl,fromObj);
  917. }
  918.  
  919.  
  920. /* initializer method: somDefaultConstCopyInit */
  921. void   somDefaultConstCopyInit(som3InitCtrl* ctrl, 
  922.         SOMObject* fromObj)
  923. {
  924. /*
  925.  *  A default copy constructor that uses a const fromObj.
  926.  */
  927.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultConstCopyInit)
  928.     (this,ctrl,fromObj);
  929. }
  930.  
  931.  
  932. /* initializer method: somDefaultVCopyInit */
  933. void   somDefaultVCopyInit(som3InitCtrl* ctrl, 
  934.         SOMObject* fromObj)
  935. {
  936. /*
  937.  *  A default copy constructor that uses a volatile fromObj.
  938.  */
  939.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultVCopyInit)
  940.     (this,ctrl,fromObj);
  941. }
  942.  
  943.  
  944. /* initializer method: somDefaultConstVCopyInit */
  945. void   somDefaultConstVCopyInit(som3InitCtrl* ctrl, 
  946.         SOMObject* fromObj)
  947. {
  948. /*
  949.  *  A default copy constructor that uses a const volatile fromObj.
  950.  */
  951.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultConstVCopyInit)
  952.     (this,ctrl,fromObj);
  953. }
  954.  
  955.  
  956. /* method: somDefaultConstAssign */
  957. SOMPFileMediaAbstract*  somDefaultConstAssign(som3AssignCtrl* ctrl, 
  958.         SOMObject* fromObj)
  959. {
  960. /*
  961.  *  A default assignment operator that uses a const fromObj.
  962.  */
  963.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultConstAssign)
  964.     (this,ctrl,fromObj);
  965. }
  966.  
  967.  
  968. /* method: somDefaultVAssign */
  969. SOMPFileMediaAbstract*  somDefaultVAssign(som3AssignCtrl* ctrl, 
  970.         SOMObject* fromObj)
  971. {
  972. /*
  973.  *  A default assignment operator that uses a volatile fromObj.
  974.  */
  975.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultVAssign)
  976.     (this,ctrl,fromObj);
  977. }
  978.  
  979.  
  980. /* method: somDefaultConstVAssign */
  981. SOMPFileMediaAbstract*  somDefaultConstVAssign(som3AssignCtrl* ctrl, 
  982.         SOMObject* fromObj)
  983. {
  984. /*
  985.  *  A default assignment operator that uses a const volatile fromObj.
  986.  */
  987.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultConstVAssign)
  988.     (this,ctrl,fromObj);
  989. }
  990.  
  991.  
  992. /* method: somInit */
  993. void   somInit()
  994. {
  995. /*
  996.  *  Obsolete but still supported. Override somDefaultInit instead of somInit.
  997.  */
  998.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somInit)
  999.     (this);
  1000. }
  1001.  
  1002.  
  1003. /* method: somFree */
  1004. void   somFree()
  1005. {
  1006. /*
  1007.  *  Use as directed by framework implementations.
  1008.  */
  1009.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somFree)
  1010.     (this);
  1011. }
  1012.  
  1013.  
  1014. /* method: somUninit */
  1015. void   somUninit()
  1016. {
  1017. /*
  1018.  *  Obsolete but still supported. Override somDestruct instead of somUninit.
  1019.  */
  1020.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somUninit)
  1021.     (this);
  1022. }
  1023.  
  1024.  
  1025. /* method: somGetClass */
  1026. SOMClass*   somGetClass()
  1027. {
  1028. /*
  1029.  *  Return the receiver's class.
  1030.  */
  1031.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somGetClass)
  1032.     (this);
  1033. }
  1034.  
  1035.  
  1036. /* method: somGetClassName */
  1037. string   somGetClassName()
  1038. {
  1039. /*
  1040.  *  Return the name of the receiver's class.
  1041.  */
  1042.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somGetClassName)
  1043.     (this);
  1044. }
  1045.  
  1046.  
  1047. /* method: somGetSize */
  1048. long   somGetSize()
  1049. {
  1050. /*
  1051.  *  Return the size of the receiver.
  1052.  */
  1053.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somGetSize)
  1054.     (this);
  1055. }
  1056.  
  1057.  
  1058. /* method: somIsA */
  1059. boolean   somIsA(SOMClass* aClassObj)
  1060. {
  1061. /*
  1062.  *  Returns 1 (true) if the receiver responds to methods
  1063.  *  introduced by <aClassObj>, and 0 (false) otherwise.
  1064.  */
  1065.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somIsA)
  1066.     (this,aClassObj);
  1067. }
  1068.  
  1069.  
  1070. /* method: somIsInstanceOf */
  1071. boolean   somIsInstanceOf(SOMClass* aClassObj)
  1072. {
  1073. /*
  1074.  *  Returns 1 (true) if the receiver is an instance of
  1075.  *  <aClassObj> and 0 (false) otherwise.
  1076.  */
  1077.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somIsInstanceOf)
  1078.     (this,aClassObj);
  1079. }
  1080.  
  1081.  
  1082. /* method: somRespondsTo */
  1083. boolean   somRespondsTo(somId mId)
  1084. {
  1085. /*
  1086.  *  Returns 1 (true) if the indicated method can be invoked
  1087.  *  on the receiver and 0 (false) otherwise.
  1088.  */
  1089.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somRespondsTo)
  1090.     (this,mId);
  1091. }
  1092.  
  1093.  
  1094. /* va_list method: somDispatch */
  1095.  
  1096. /*
  1097.  *  This method provides a generic, class-specific dispatch mechanism.
  1098.  *  It accepts as input <retValue> a pointer to the memory area to be
  1099.  *  loaded with the result of dispatching the method indicated by
  1100.  *  <methodId> using the arguments in <ap>. <ap> contains the object
  1101.  *  on which the method is to be invoked as the first argument.
  1102.  */
  1103. /* the va_list invocation form */
  1104. boolean   SOMPFileMediaAbstract_somDispatch(somToken* retValue, 
  1105.         somId methodId, 
  1106.         va_list ap)
  1107. {return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatch)
  1108.     (this,retValue,methodId,ap);
  1109. }
  1110.  
  1111. /* the varargs invocation form */
  1112. boolean   somDispatch(somToken* retValue, 
  1113.         somId methodId, 
  1114.         ...)
  1115. {
  1116. /*
  1117.  *  This method provides a generic, class-specific dispatch mechanism.
  1118.  *  It accepts as input <retValue> a pointer to the memory area to be
  1119.  *  loaded with the result of dispatching the method indicated by
  1120.  *  <methodId> using the arguments in <ap>. <ap> contains the object
  1121.  *  on which the method is to be invoked as the first argument.
  1122.  */
  1123.    va_list ap;
  1124.    va_start(ap, methodId);
  1125.    boolean __somResult = 
  1126.       SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatch)
  1127.     (this,retValue,methodId,ap);
  1128.    va_end(ap);
  1129.    return __somResult;
  1130. }
  1131.  
  1132.  
  1133. /* va_list method: somClassDispatch */
  1134.  
  1135. /*
  1136.  *  Like somDispatch, but method resolution for static methods is done
  1137.  *  according to the clsObj instance method table.
  1138.  */
  1139. /* the va_list invocation form */
  1140. boolean   SOMPFileMediaAbstract_somClassDispatch(SOMClass* clsObj, 
  1141.         somToken* retValue, 
  1142.         somId methodId, 
  1143.         va_list ap)
  1144. {return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somClassDispatch)
  1145.     (this,clsObj,retValue,methodId,ap);
  1146. }
  1147.  
  1148. /* the varargs invocation form */
  1149. boolean   somClassDispatch(SOMClass* clsObj, 
  1150.         somToken* retValue, 
  1151.         somId methodId, 
  1152.         ...)
  1153. {
  1154. /*
  1155.  *  Like somDispatch, but method resolution for static methods is done
  1156.  *  according to the clsObj instance method table.
  1157.  */
  1158.    va_list ap;
  1159.    va_start(ap, methodId);
  1160.    boolean __somResult = 
  1161.       SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somClassDispatch)
  1162.     (this,clsObj,retValue,methodId,ap);
  1163.    va_end(ap);
  1164.    return __somResult;
  1165. }
  1166.  
  1167.  
  1168. /* method: somCastObj */
  1169. boolean   somCastObj(SOMClass* cls)
  1170. {
  1171. /*
  1172.  *  cast the receiving object to cls (which must be an ancestor of the
  1173.  *  objects true class. Returns true on success.
  1174.  */
  1175.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somCastObj)
  1176.     (this,cls);
  1177. }
  1178.  
  1179.  
  1180. /* method: somResetObj */
  1181. boolean   somResetObj()
  1182. {
  1183. /*
  1184.  *  reset an object to its true class. Returns true always.
  1185.  */
  1186.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somResetObj)
  1187.     (this);
  1188. }
  1189.  
  1190.  
  1191. /* va_list method: somDispatchV */
  1192.  
  1193. /*
  1194.  *  Obsolete. Use somDispatch instead.
  1195.  */
  1196. /* the va_list invocation form */
  1197. void   SOMPFileMediaAbstract_somDispatchV(somId methodId, 
  1198.         somId descriptor, 
  1199.         va_list ap)
  1200. {   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchV)
  1201.     (this,methodId,descriptor,ap);
  1202. }
  1203.  
  1204. /* the varargs invocation form */
  1205. void   somDispatchV(somId methodId, 
  1206.         somId descriptor, 
  1207.         ...)
  1208. {
  1209. /*
  1210.  *  Obsolete. Use somDispatch instead.
  1211.  */
  1212.    va_list ap;
  1213.    va_start(ap, descriptor);
  1214.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchV)
  1215.     (this,methodId,descriptor,ap);
  1216.    va_end(ap);
  1217. }
  1218.  
  1219.  
  1220. /* va_list method: somDispatchL */
  1221.  
  1222. /*
  1223.  *  Obsolete. Use somDispatch instead.
  1224.  */
  1225. /* the va_list invocation form */
  1226. long   SOMPFileMediaAbstract_somDispatchL(somId methodId, 
  1227.         somId descriptor, 
  1228.         va_list ap)
  1229. {return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchL)
  1230.     (this,methodId,descriptor,ap);
  1231. }
  1232.  
  1233. /* the varargs invocation form */
  1234. long   somDispatchL(somId methodId, 
  1235.         somId descriptor, 
  1236.         ...)
  1237. {
  1238. /*
  1239.  *  Obsolete. Use somDispatch instead.
  1240.  */
  1241.    va_list ap;
  1242.    va_start(ap, descriptor);
  1243.    long __somResult = 
  1244.       SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchL)
  1245.     (this,methodId,descriptor,ap);
  1246.    va_end(ap);
  1247.    return __somResult;
  1248. }
  1249.  
  1250.  
  1251. /* va_list method: somDispatchA */
  1252.  
  1253. /*
  1254.  *  Obsolete. Use somDispatch instead.
  1255.  */
  1256. /* the va_list invocation form */
  1257. void*   SOMPFileMediaAbstract_somDispatchA(somId methodId, 
  1258.         somId descriptor, 
  1259.         va_list ap)
  1260. {return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchA)
  1261.     (this,methodId,descriptor,ap);
  1262. }
  1263.  
  1264. /* the varargs invocation form */
  1265. void*   somDispatchA(somId methodId, 
  1266.         somId descriptor, 
  1267.         ...)
  1268. {
  1269. /*
  1270.  *  Obsolete. Use somDispatch instead.
  1271.  */
  1272.    va_list ap;
  1273.    va_start(ap, descriptor);
  1274.    void* __somResult = 
  1275.       SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchA)
  1276.     (this,methodId,descriptor,ap);
  1277.    va_end(ap);
  1278.    return __somResult;
  1279. }
  1280.  
  1281.  
  1282. /* va_list method: somDispatchD */
  1283.  
  1284. /*
  1285.  *  Obsolete. Use somDispatch instead.
  1286.  */
  1287. /* the va_list invocation form */
  1288. double   SOMPFileMediaAbstract_somDispatchD(somId methodId, 
  1289.         somId descriptor, 
  1290.         va_list ap)
  1291. {return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchD)
  1292.     (this,methodId,descriptor,ap);
  1293. }
  1294.  
  1295. /* the varargs invocation form */
  1296. double   somDispatchD(somId methodId, 
  1297.         somId descriptor, 
  1298.         ...)
  1299. {
  1300. /*
  1301.  *  Obsolete. Use somDispatch instead.
  1302.  */
  1303.    va_list ap;
  1304.    va_start(ap, descriptor);
  1305.    double __somResult = 
  1306.       SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchD)
  1307.     (this,methodId,descriptor,ap);
  1308.    va_end(ap);
  1309.    return __somResult;
  1310. }
  1311.  
  1312.  
  1313. /* method: somPrintSelf */
  1314. SOMObject*   somPrintSelf()
  1315. {
  1316. /*
  1317.  *  Uses <SOMOutCharRoutine> to write a brief string with identifying
  1318.  *  information about this object.  The default implementation just gives
  1319.  *  the object's class name and its address in memory.
  1320.  *  <self> is returned.
  1321.  */
  1322.    return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somPrintSelf)
  1323.     (this);
  1324. }
  1325.  
  1326.  
  1327. /* method: somDumpSelf */
  1328. void   somDumpSelf(long level)
  1329. {
  1330. /*
  1331.  *  Uses <SOMOutCharRoutine> to write a detailed description of this object
  1332.  *  and its current state.
  1333.  * 
  1334.  *  <level> indicates the nesting level for describing compound objects
  1335.  *  it must be greater than or equal to zero.  All lines in the
  1336.  *  description will be preceeded by <2*level> spaces.
  1337.  * 
  1338.  *  This routine only actually writes the data that concerns the object
  1339.  *  as a whole, such as class, and uses <somDumpSelfInt> to describe
  1340.  *  the object's current state.  This approach allows readable
  1341.  *  descriptions of compound objects to be constructed.
  1342.  * 
  1343.  *  Generally it is not necessary to override this method, if it is
  1344.  *  overriden it generally must be completely replaced.
  1345.  */
  1346.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDumpSelf)
  1347.     (this,level);
  1348. }
  1349.  
  1350.  
  1351. /* method: somDumpSelfInt */
  1352. void   somDumpSelfInt(long level)
  1353. {
  1354. /*
  1355.  *  Uses <SOMOutCharRoutine> to write in the current state of this object.
  1356.  *  Generally this method will need to be overridden.  When overriding
  1357.  *  it, begin by calling the parent class form of this method and then
  1358.  *  write in a description of your class's instance data. This will
  1359.  *  result in a description of all the object's instance data going
  1360.  *  from its root ancestor class to its specific class.
  1361.  */
  1362.    SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDumpSelfInt)
  1363.     (this,level);
  1364. }
  1365.  
  1366.  
  1367.  
  1368. };   /* SOMPFileMediaAbstract */
  1369.  
  1370.  
  1371.  
  1372. #endif       /* SOM_SOMPFileMediaAbstract_xh */
  1373.