
/*
 * This file was generated by the SOM Compiler.
 * FileName: fma.xh.
 * Generated using:
 *     SOM Precompiler somipc: 2.29.1.17
 *     SOM Emitter emitxh: 2.47
 */

/*
 *    COMPONENT_NAME: somp
 * 
 *    ORIGINS: 27
 * 
 * 
 *     25H7912  (C)  COPYRIGHT International Business Machines Corp. 1992,1994,1996
 *    All Rights Reserved
 *    Licensed Materials - Property of IBM
 *    US Government Users Restricted Rights - Use, duplication or
 *    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
 * 
 */


#ifndef SOM_SOMPFileMediaAbstract_xh
#define SOM_SOMPFileMediaAbstract_xh

class SOMPFileMediaAbstract;

/*
 *  This is the abstract class definition for an interface to
 *  a file media.
 */

#define SOMPFileMediaAbstract_MajorVersion 2
#define SOMPFileMediaAbstract_MinorVersion 1

/* C++ SOM defs */
#include <somcls.xh>
#include <somcm.xh>

/* C++ parent defs */
#ifndef SOM_SOMPMediaInterfaceAbstract_xh
#include <mia.xh>
#endif

#ifndef SOMPFileMediaAbstract_API
#define SOMPFileMediaAbstract_API
/*
 * -- The Class API
 */

/*
 * Start of bindings for IDL types
 */

class SOMClass;
class SOMObject;

/*
 * End of bindings for IDL types.
 */

/* A procedure to create the SOMPFileMediaAbstract Class */
SOMEXTERN SOMClass * SOMLINK SOMPFileMediaAbstractNewClass(
		integer4 majorVersion,
		integer4 minorVersion);

/* The API to the SOMPFileMediaAbstract class object, and the methods it introduces. */
SOMEXTERN struct SOMPFileMediaAbstractClassDataStructure {
	SOMClass *classObject;
	somMToken sompInitReadWrite;
	somMToken sompInitReadOnly;
	somMToken somReserved1;
	somMToken somReserved2;
	somMToken sompSeekPosition;
	somMToken sompSeekPositionRel;
	somMToken sompGetOffset;
	somMToken sompReadBytes;
	somMToken sompWriteBytes;
	somMToken sompWriteOctet;
	somMToken sompWriteShort;
	somMToken sompWriteUnsignedShort;
	somMToken sompWriteInteger;
	somMToken sompWriteLong;
	somMToken sompWriteUnsignedLong;
	somMToken sompWriteDouble;
	somMToken sompWriteFloat;
	somMToken sompWriteCharacter;
	somMToken sompWriteSomobject;
	somMToken sompWriteString;
	somMToken sompReadOctet;
	somMToken sompReadShort;
	somMToken sompReadUnsignedShort;
	somMToken sompReadInteger;
	somMToken sompReadLong;
	somMToken sompReadUnsignedLong;
	somMToken sompReadDouble;
	somMToken sompReadFloat;
	somMToken sompReadCharacter;
	somMToken sompReadSomobject;
	somMToken sompReadString;
	somMToken sompReadStringToBuffer;
	somMToken sompWriteLine;
	somMToken sompReadLine;
	somMToken sompWriteTypeCode;
	somMToken sompReadTypeCode;
} SOMDLINK SOMPFileMediaAbstractClassData;
#define _SOMPFileMediaAbstract SOMPFileMediaAbstractClassData.classObject

/* The API to parentMtabs for SOMPFileMediaAbstract, and the instance data it introduces. */
SOMEXTERN struct SOMPFileMediaAbstractCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken              instanceDataToken;
} SOMDLINK SOMPFileMediaAbstractCClassData;

/*
 * -- Typedefs for SOMPFileMediaAbstract Method Procedures
 */
SOMEXTERN {
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompInitReadWrite(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string mediaInfo);
typedef somTP_SOMPFileMediaAbstract_sompInitReadWrite *somTD_SOMPFileMediaAbstract_sompInitReadWrite;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompInitReadOnly(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string mediaInfo);
typedef somTP_SOMPFileMediaAbstract_sompInitReadOnly *somTD_SOMPFileMediaAbstract_sompInitReadOnly;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompSeekPosition(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		long offset);
typedef somTP_SOMPFileMediaAbstract_sompSeekPosition *somTD_SOMPFileMediaAbstract_sompSeekPosition;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompSeekPositionRel(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		long offset);
typedef somTP_SOMPFileMediaAbstract_sompSeekPositionRel *somTD_SOMPFileMediaAbstract_sompSeekPositionRel;
typedef long   SOMLINK somTP_SOMPFileMediaAbstract_sompGetOffset(SOMPFileMediaAbstract *somSelf, Environment *ev);
typedef somTP_SOMPFileMediaAbstract_sompGetOffset *somTD_SOMPFileMediaAbstract_sompGetOffset;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadBytes(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string byteStream, 
		long length);
typedef somTP_SOMPFileMediaAbstract_sompReadBytes *somTD_SOMPFileMediaAbstract_sompReadBytes;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteBytes(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string byteStream, 
		long length);
typedef somTP_SOMPFileMediaAbstract_sompWriteBytes *somTD_SOMPFileMediaAbstract_sompWriteBytes;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteOctet(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		octet i1);
typedef somTP_SOMPFileMediaAbstract_sompWriteOctet *somTD_SOMPFileMediaAbstract_sompWriteOctet;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteShort(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		short i2);
typedef somTP_SOMPFileMediaAbstract_sompWriteShort *somTD_SOMPFileMediaAbstract_sompWriteShort;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteUnsignedShort(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		unsigned short u2);
typedef somTP_SOMPFileMediaAbstract_sompWriteUnsignedShort *somTD_SOMPFileMediaAbstract_sompWriteUnsignedShort;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteLong(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		long i4);
typedef somTP_SOMPFileMediaAbstract_sompWriteLong *somTD_SOMPFileMediaAbstract_sompWriteLong;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteUnsignedLong(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		unsigned long u4);
typedef somTP_SOMPFileMediaAbstract_sompWriteUnsignedLong *somTD_SOMPFileMediaAbstract_sompWriteUnsignedLong;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteDouble(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		double f8);
typedef somTP_SOMPFileMediaAbstract_sompWriteDouble *somTD_SOMPFileMediaAbstract_sompWriteDouble;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteFloat(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		float f4);
typedef somTP_SOMPFileMediaAbstract_sompWriteFloat *somTD_SOMPFileMediaAbstract_sompWriteFloat;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteCharacter(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		char c);
typedef somTP_SOMPFileMediaAbstract_sompWriteCharacter *somTD_SOMPFileMediaAbstract_sompWriteCharacter;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteSomobject(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		SOMObject* so, 
		SOMObject* parentObject);
typedef somTP_SOMPFileMediaAbstract_sompWriteSomobject *somTD_SOMPFileMediaAbstract_sompWriteSomobject;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteString(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string wstring);
typedef somTP_SOMPFileMediaAbstract_sompWriteString *somTD_SOMPFileMediaAbstract_sompWriteString;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadOctet(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		octet* i1);
typedef somTP_SOMPFileMediaAbstract_sompReadOctet *somTD_SOMPFileMediaAbstract_sompReadOctet;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadShort(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		short* i2);
typedef somTP_SOMPFileMediaAbstract_sompReadShort *somTD_SOMPFileMediaAbstract_sompReadShort;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadUnsignedShort(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		unsigned short* u2);
typedef somTP_SOMPFileMediaAbstract_sompReadUnsignedShort *somTD_SOMPFileMediaAbstract_sompReadUnsignedShort;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadLong(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		long* i4);
typedef somTP_SOMPFileMediaAbstract_sompReadLong *somTD_SOMPFileMediaAbstract_sompReadLong;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadUnsignedLong(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		unsigned long* i4);
typedef somTP_SOMPFileMediaAbstract_sompReadUnsignedLong *somTD_SOMPFileMediaAbstract_sompReadUnsignedLong;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadDouble(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		double* f8);
typedef somTP_SOMPFileMediaAbstract_sompReadDouble *somTD_SOMPFileMediaAbstract_sompReadDouble;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadFloat(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		float* f4);
typedef somTP_SOMPFileMediaAbstract_sompReadFloat *somTD_SOMPFileMediaAbstract_sompReadFloat;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadCharacter(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		char* c);
typedef somTP_SOMPFileMediaAbstract_sompReadCharacter *somTD_SOMPFileMediaAbstract_sompReadCharacter;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadSomobject(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		SOMObject** so);
typedef somTP_SOMPFileMediaAbstract_sompReadSomobject *somTD_SOMPFileMediaAbstract_sompReadSomobject;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadString(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string* rstring);
typedef somTP_SOMPFileMediaAbstract_sompReadString *somTD_SOMPFileMediaAbstract_sompReadString;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadStringToBuffer(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string buffer, 
		long bufsize);
typedef somTP_SOMPFileMediaAbstract_sompReadStringToBuffer *somTD_SOMPFileMediaAbstract_sompReadStringToBuffer;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteLine(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string buffer);
typedef somTP_SOMPFileMediaAbstract_sompWriteLine *somTD_SOMPFileMediaAbstract_sompWriteLine;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadLine(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		string buffer, 
		long bufsize);
typedef somTP_SOMPFileMediaAbstract_sompReadLine *somTD_SOMPFileMediaAbstract_sompReadLine;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompWriteTypeCode(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		TypeCode tc);
typedef somTP_SOMPFileMediaAbstract_sompWriteTypeCode *somTD_SOMPFileMediaAbstract_sompWriteTypeCode;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompReadTypeCode(SOMPFileMediaAbstract *somSelf, Environment *ev, 
		TypeCode* tc);
typedef somTP_SOMPFileMediaAbstract_sompReadTypeCode *somTD_SOMPFileMediaAbstract_sompReadTypeCode;

/*
 * -- Typedefs for Reintroduced Wrapper Methods
 */
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompOpen(SOMPFileMediaAbstract *somSelf, Environment *ev);
typedef somTP_SOMPFileMediaAbstract_sompOpen *somTD_SOMPFileMediaAbstract_sompOpen;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_sompClose(SOMPFileMediaAbstract *somSelf, Environment *ev);
typedef somTP_SOMPFileMediaAbstract_sompClose *somTD_SOMPFileMediaAbstract_sompClose;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultInit(SOMPFileMediaAbstract *somSelf, 
		som3InitCtrl* ctrl);
typedef somTP_SOMPFileMediaAbstract_somDefaultInit *somTD_SOMPFileMediaAbstract_somDefaultInit;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDestruct(SOMPFileMediaAbstract *somSelf, 
		octet doFree, 
		som3DestructCtrl* ctrl);
typedef somTP_SOMPFileMediaAbstract_somDestruct *somTD_SOMPFileMediaAbstract_somDestruct;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultCopyInit(SOMPFileMediaAbstract *somSelf, 
		som3InitCtrl* ctrl, 
		SOMObject* fromObj);
typedef somTP_SOMPFileMediaAbstract_somDefaultCopyInit *somTD_SOMPFileMediaAbstract_somDefaultCopyInit;
typedef SOMPFileMediaAbstract*   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultAssign(SOMPFileMediaAbstract *somSelf, 
		som3AssignCtrl* ctrl, 
		SOMObject* fromObj);
typedef somTP_SOMPFileMediaAbstract_somDefaultAssign *somTD_SOMPFileMediaAbstract_somDefaultAssign;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultConstCopyInit(SOMPFileMediaAbstract *somSelf, 
		som3InitCtrl* ctrl, 
		SOMObject* fromObj);
typedef somTP_SOMPFileMediaAbstract_somDefaultConstCopyInit *somTD_SOMPFileMediaAbstract_somDefaultConstCopyInit;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultVCopyInit(SOMPFileMediaAbstract *somSelf, 
		som3InitCtrl* ctrl, 
		SOMObject* fromObj);
typedef somTP_SOMPFileMediaAbstract_somDefaultVCopyInit *somTD_SOMPFileMediaAbstract_somDefaultVCopyInit;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultConstVCopyInit(SOMPFileMediaAbstract *somSelf, 
		som3InitCtrl* ctrl, 
		SOMObject* fromObj);
typedef somTP_SOMPFileMediaAbstract_somDefaultConstVCopyInit *somTD_SOMPFileMediaAbstract_somDefaultConstVCopyInit;
typedef SOMPFileMediaAbstract*   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultConstAssign(SOMPFileMediaAbstract *somSelf, 
		som3AssignCtrl* ctrl, 
		SOMObject* fromObj);
typedef somTP_SOMPFileMediaAbstract_somDefaultConstAssign *somTD_SOMPFileMediaAbstract_somDefaultConstAssign;
typedef SOMPFileMediaAbstract*   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultVAssign(SOMPFileMediaAbstract *somSelf, 
		som3AssignCtrl* ctrl, 
		SOMObject* fromObj);
typedef somTP_SOMPFileMediaAbstract_somDefaultVAssign *somTD_SOMPFileMediaAbstract_somDefaultVAssign;
typedef SOMPFileMediaAbstract*   SOMLINK somTP_SOMPFileMediaAbstract_somDefaultConstVAssign(SOMPFileMediaAbstract *somSelf, 
		som3AssignCtrl* ctrl, 
		SOMObject* fromObj);
typedef somTP_SOMPFileMediaAbstract_somDefaultConstVAssign *somTD_SOMPFileMediaAbstract_somDefaultConstVAssign;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somInit(SOMPFileMediaAbstract *somSelf);
typedef somTP_SOMPFileMediaAbstract_somInit *somTD_SOMPFileMediaAbstract_somInit;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somFree(SOMPFileMediaAbstract *somSelf);
typedef somTP_SOMPFileMediaAbstract_somFree *somTD_SOMPFileMediaAbstract_somFree;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somUninit(SOMPFileMediaAbstract *somSelf);
typedef somTP_SOMPFileMediaAbstract_somUninit *somTD_SOMPFileMediaAbstract_somUninit;
typedef SOMClass*   SOMLINK somTP_SOMPFileMediaAbstract_somGetClass(SOMPFileMediaAbstract *somSelf);
typedef somTP_SOMPFileMediaAbstract_somGetClass *somTD_SOMPFileMediaAbstract_somGetClass;
typedef string   SOMLINK somTP_SOMPFileMediaAbstract_somGetClassName(SOMPFileMediaAbstract *somSelf);
typedef somTP_SOMPFileMediaAbstract_somGetClassName *somTD_SOMPFileMediaAbstract_somGetClassName;
typedef long   SOMLINK somTP_SOMPFileMediaAbstract_somGetSize(SOMPFileMediaAbstract *somSelf);
typedef somTP_SOMPFileMediaAbstract_somGetSize *somTD_SOMPFileMediaAbstract_somGetSize;
typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somIsA(SOMPFileMediaAbstract *somSelf, 
		SOMClass* aClassObj);
typedef somTP_SOMPFileMediaAbstract_somIsA *somTD_SOMPFileMediaAbstract_somIsA;
typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somIsInstanceOf(SOMPFileMediaAbstract *somSelf, 
		SOMClass* aClassObj);
typedef somTP_SOMPFileMediaAbstract_somIsInstanceOf *somTD_SOMPFileMediaAbstract_somIsInstanceOf;
typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somRespondsTo(SOMPFileMediaAbstract *somSelf, 
		somId mId);
typedef somTP_SOMPFileMediaAbstract_somRespondsTo *somTD_SOMPFileMediaAbstract_somRespondsTo;
typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somDispatch(SOMPFileMediaAbstract *somSelf, 
		somToken* retValue, 
		somId methodId, 
		va_list ap);
typedef somTP_SOMPFileMediaAbstract_somDispatch *somTD_SOMPFileMediaAbstract_somDispatch;
typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somClassDispatch(SOMPFileMediaAbstract *somSelf, 
		SOMClass* clsObj, 
		somToken* retValue, 
		somId methodId, 
		va_list ap);
typedef somTP_SOMPFileMediaAbstract_somClassDispatch *somTD_SOMPFileMediaAbstract_somClassDispatch;
typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somCastObj(SOMPFileMediaAbstract *somSelf, 
		SOMClass* cls);
typedef somTP_SOMPFileMediaAbstract_somCastObj *somTD_SOMPFileMediaAbstract_somCastObj;
typedef boolean   SOMLINK somTP_SOMPFileMediaAbstract_somResetObj(SOMPFileMediaAbstract *somSelf);
typedef somTP_SOMPFileMediaAbstract_somResetObj *somTD_SOMPFileMediaAbstract_somResetObj;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDispatchV(SOMPFileMediaAbstract *somSelf, 
		somId methodId, 
		somId descriptor, 
		va_list ap);
typedef somTP_SOMPFileMediaAbstract_somDispatchV *somTD_SOMPFileMediaAbstract_somDispatchV;
typedef long   SOMLINK somTP_SOMPFileMediaAbstract_somDispatchL(SOMPFileMediaAbstract *somSelf, 
		somId methodId, 
		somId descriptor, 
		va_list ap);
typedef somTP_SOMPFileMediaAbstract_somDispatchL *somTD_SOMPFileMediaAbstract_somDispatchL;
typedef void*   SOMLINK somTP_SOMPFileMediaAbstract_somDispatchA(SOMPFileMediaAbstract *somSelf, 
		somId methodId, 
		somId descriptor, 
		va_list ap);
typedef somTP_SOMPFileMediaAbstract_somDispatchA *somTD_SOMPFileMediaAbstract_somDispatchA;
typedef double   SOMLINK somTP_SOMPFileMediaAbstract_somDispatchD(SOMPFileMediaAbstract *somSelf, 
		somId methodId, 
		somId descriptor, 
		va_list ap);
typedef somTP_SOMPFileMediaAbstract_somDispatchD *somTD_SOMPFileMediaAbstract_somDispatchD;
typedef SOMObject*   SOMLINK somTP_SOMPFileMediaAbstract_somPrintSelf(SOMPFileMediaAbstract *somSelf);
typedef somTP_SOMPFileMediaAbstract_somPrintSelf *somTD_SOMPFileMediaAbstract_somPrintSelf;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDumpSelf(SOMPFileMediaAbstract *somSelf, 
		long level);
typedef somTP_SOMPFileMediaAbstract_somDumpSelf *somTD_SOMPFileMediaAbstract_somDumpSelf;
typedef void   SOMLINK somTP_SOMPFileMediaAbstract_somDumpSelfInt(SOMPFileMediaAbstract *somSelf, 
		long level);
typedef somTP_SOMPFileMediaAbstract_somDumpSelfInt *somTD_SOMPFileMediaAbstract_somDumpSelfInt;
}

#endif /* SOMPFileMediaAbstract_API */


/*
 * -- This emitter treats Method Tokens as Thunks by default.
 * -- Use the sc modifier "nothunks" to change this default
 */
#undef somresolve_
#define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))

/*
 * -- The C++ Wrapper Class for SOMPFileMediaAbstract
 */
class SOMPFileMediaAbstract : public SOMPMediaInterfaceAbstract
{
/*
 *  This is the abstract class definition for an interface to
 *  a file media.
 */
public:

// SOMPFileMediaAbstract::new creates the class object if necessary, and then uses somNewNoInit
// to allocate memory and create the object. Initialization is in ctors.
void *operator new(size_t)
{
   if (!_SOMPFileMediaAbstract) SOMPFileMediaAbstractNewClass(SOMPFileMediaAbstract_MajorVersion,SOMPFileMediaAbstract_MinorVersion);
   return (void*)
      SOM_Resolve(_SOMPFileMediaAbstract,SOMClass,somNewNoInit)
         ((SOMClass *)((void*)_SOMPFileMediaAbstract));
}

// SOMPFileMediaAbstract::delete uses somDestruct.
void operator delete(void * obj)
{
   if (obj && *(void**)obj) {
      SOM_Resolve(obj,SOMObject,somFree)
         ((SOMObject*)obj);
   }
}

SOMPFileMediaAbstract& operator=(SOMPFileMediaAbstract& fromObj)
{
   this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
   return *this;
}

SOMPFileMediaAbstract()
{
   if (*(void**)this != 
       ((somParentMtabStructPtr)
        (SOMPFileMediaAbstractCClassData.parentMtab))->mtab)
      return;
   ((SOMObject*)((void*)this))->somDefaultInit(0);
}

SOMPFileMediaAbstract(SOMPFileMediaAbstract* fromObj)
{
   if (*(void**)this != 
       ((somParentMtabStructPtr)
        (SOMPFileMediaAbstractCClassData.parentMtab))->mtab)
      return;
   ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
}

#ifdef __IBMCPP__
#pragma info(nocnv,nopar)
#endif
SOMPFileMediaAbstract(const SOMPFileMediaAbstract* fromObj)
{
   if (*(void**)this != 
       ((somParentMtabStructPtr)
        (SOMPFileMediaAbstractCClassData.parentMtab))->mtab)
      return;
   ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
}
#ifdef __IBMCPP__
#pragma info(restore)
#endif


/* method: sompInitReadWrite */
void   sompInitReadWrite(Environment *ev, 
		string mediaInfo)
{
/*
 *  Initialize the media interface for read-write access.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompInitReadWrite)
	(this, ev,mediaInfo);
}


/* method: sompInitReadOnly */
void   sompInitReadOnly(Environment *ev, 
		string mediaInfo)
{
/*
 *  Initialize the media interface for read-only access.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompInitReadOnly)
	(this, ev,mediaInfo);
}


/* method: sompSeekPosition */
void   sompSeekPosition(Environment *ev, 
		long offset)
{
/*
 *  Position the media to an offset.  Any further reading
 *  or writing will begin from that point.  Reading and writing
 *  implicitly repositions the file, so usually this is not needed.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompSeekPosition)
	(this, ev,offset);
}


/* method: sompSeekPositionRel */
void   sompSeekPositionRel(Environment *ev, 
		long offset)
{
/*
 *  Like Position, but offset is relative to current.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompSeekPositionRel)
	(this, ev,offset);
}


/* method: sompGetOffset */
long   sompGetOffset(Environment *ev)
{
/*
 *  Returns the current offset within the file.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompGetOffset)
	(this, ev);
}


/* method: sompReadBytes */
void   sompReadBytes(Environment *ev, 
		string byteStream, 
		long length)
{
/*
 *  Read a byte stream of the given length from the media.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadBytes)
	(this, ev,byteStream,length);
}


/* method: sompWriteBytes */
void   sompWriteBytes(Environment *ev, 
		string byteStream, 
		long length)
{
/*
 *  Write a byte stream of the given length to the media.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteBytes)
	(this, ev,byteStream,length);
}


/* method: sompWriteOctet */
void   sompWriteOctet(Environment *ev, 
		octet i1)
{
/*
 *  Writes the given 8-bit integer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteOctet)
	(this, ev,i1);
}


/* method: sompWriteShort */
void   sompWriteShort(Environment *ev, 
		short i2)
{
/*
 *  Writes the given short integer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteShort)
	(this, ev,i2);
}


/* method: sompWriteUnsignedShort */
void   sompWriteUnsignedShort(Environment *ev, 
		unsigned short u2)
{
/*
 *  Writes the given unsigned short integer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteUnsignedShort)
	(this, ev,u2);
}


/* method: sompWriteLong */
void   sompWriteLong(Environment *ev, 
		long i4)
{
/*
 *  Writes the given long integer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteLong)
	(this, ev,i4);
}


/* method: sompWriteUnsignedLong */
void   sompWriteUnsignedLong(Environment *ev, 
		unsigned long u4)
{
/*
 *  Writes the given unsigned long integer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteUnsignedLong)
	(this, ev,u4);
}


/* method: sompWriteDouble */
void   sompWriteDouble(Environment *ev, 
		double f8)
{
/*
 *  Writes the given double-precision float
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteDouble)
	(this, ev,f8);
}


/* method: sompWriteFloat */
void   sompWriteFloat(Environment *ev, 
		float f4)
{
/*
 *  Writes the given float
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteFloat)
	(this, ev,f4);
}


/* method: sompWriteCharacter */
void   sompWriteCharacter(Environment *ev, 
		char c)
{
/*
 *  Writes the given character
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteCharacter)
	(this, ev,c);
}


/* method: sompWriteSomobject */
void   sompWriteSomobject(Environment *ev, 
		SOMObject* so, 
		SOMObject* parentObject)
{
/*
 *  Writes the given object.  Uses parentObject to determine whether relative
 *  Ids are used.  If object (so) has no persistent parent, client passes
 *  NULL parentObject.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteSomobject)
	(this, ev,so,parentObject);
}


/* method: sompWriteString */
void   sompWriteString(Environment *ev, 
		string wstring)
{
/*
 *  Writes the given string to the media.
 * 
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteString)
	(this, ev,wstring);
}


/* method: sompReadOctet */
void   sompReadOctet(Environment *ev, 
		octet* i1)
{
/*
 *  Reads an 8-bit integer into memory at given the pointer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadOctet)
	(this, ev,i1);
}


/* method: sompReadShort */
void   sompReadShort(Environment *ev, 
		short* i2)
{
/*
 *  Reads a short integer into memory at given the pointer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadShort)
	(this, ev,i2);
}


/* method: sompReadUnsignedShort */
void   sompReadUnsignedShort(Environment *ev, 
		unsigned short* u2)
{
/*
 *  Reads an unsigned short integer into memory at given the pointer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadUnsignedShort)
	(this, ev,u2);
}


/* method: sompReadLong */
void   sompReadLong(Environment *ev, 
		long* i4)
{
/*
 *  Reads a long integer into memory at given the pointer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadLong)
	(this, ev,i4);
}


/* method: sompReadUnsignedLong */
void   sompReadUnsignedLong(Environment *ev, 
		unsigned long* i4)
{
/*
 *  Reads a long integer into memory at given the pointer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadUnsignedLong)
	(this, ev,i4);
}


/* method: sompReadDouble */
void   sompReadDouble(Environment *ev, 
		double* f8)
{
/*
 *  Reads a float into memory at given the pointer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadDouble)
	(this, ev,f8);
}


/* method: sompReadFloat */
void   sompReadFloat(Environment *ev, 
		float* f4)
{
/*
 *  Reads a float into memory at given the pointer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadFloat)
	(this, ev,f4);
}


/* method: sompReadCharacter */
void   sompReadCharacter(Environment *ev, 
		char* c)
{
/*
 *  Reads a character into memory at given the pointer
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadCharacter)
	(this, ev,c);
}


/* method: sompReadSomobject */
void   sompReadSomobject(Environment *ev, 
		SOMObject** so)
{
/*
 *  Instantiates and returns a new object of the class specified in
 *  the file. Standard SOM objects are simply instantiated. Persistent
 *  objects are instantiated and marked for restoration.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadSomobject)
	(this, ev,so);
}


/* method: sompReadString */
void   sompReadString(Environment *ev, 
		string* rstring)
{
/*
 *  Read and allocate a string. Input is a pointer to a string. The input
 *  pointer is modified to point to a newly allocated buffer which
 *  will contain the string read from the media.
 *  Callers are responsible for freeing the returned buffer with SOMFree.
 *  If you want to read a string into a predefined buffer,
 *  use sompReadStringToBuffer.
 * 
 *  This method can be used to read strings which were stored by
 *  sompWriteString.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadString)
	(this, ev,rstring);
}


/* method: sompReadStringToBuffer */
void   sompReadStringToBuffer(Environment *ev, 
		string buffer, 
		long bufsize)
{
/*
 *  Read a string into the preallocated buffer given. The size of the
 *  buffer is given in <bufsize>. If the string read is larger than
 *  bufsize it is truncated to fit in bufsize.
 * 
 *  This method can be used to read strings which were stored by
 *  sompWriteString.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadStringToBuffer)
	(this, ev,buffer,bufsize);
}


/* method: sompWriteLine */
void   sompWriteLine(Environment *ev, 
		string buffer)
{
/*
 *  Writes the given string in <buffer> at the current position.
 *  The terminating null character (\0) is not written.
 * 
 *  This method does NOT append a newline character (\n) to the
 *  given string before writing. If the user of this method intends to
 *  restore this <buffer> of data with sompReadLine, the user must
 *  put the newline character in the <buffer> before calling this
 *  method.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteLine)
	(this, ev,buffer);
}


/* method: sompReadLine */
void   sompReadLine(Environment *ev, 
		string buffer, 
		long bufsize)
{
/*
 *  Read a string up to and including the first newline character (\n)
 *  into the preallocated buffer given.
 *  Use this method for reading strings stored with sompWriteLine.
 * 
 *  The size of the buffer is given in <bufsize>. If the string read is
 *  larger than bufsize it is truncated to fit in bufsize.
 * 
 *  The characters read are stored in <buffer>, and a null character (\0)
 *  is appended. The newline character, if read, is included in the string.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadLine)
	(this, ev,buffer,bufsize);
}


/* method: sompWriteTypeCode */
void   sompWriteTypeCode(Environment *ev, 
		TypeCode tc)
{
/*
 *  Writes a restoreable version of an IDL type code. Restore with
 *  sompReadTypeCode().
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompWriteTypeCode)
	(this, ev,tc);
}


/* method: sompReadTypeCode */
void   sompReadTypeCode(Environment *ev, 
		TypeCode* tc)
{
/*
 *  Restores an IDL type code that was stored with sompWriteTypeCode().
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPFileMediaAbstract,sompReadTypeCode)
	(this, ev,tc);
}


/*
 * Reintroduce inherited methods
 */

/* method: sompOpen */
void   sompOpen(Environment *ev)
{
/*
 *  Open the media interface.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPMediaInterfaceAbstract,sompOpen)
	(this, ev);
}


/* method: sompClose */
void   sompClose(Environment *ev)
{
/*
 *  Close the media interface.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMPMediaInterfaceAbstract,sompClose)
	(this, ev);
}


/* initializer method: somDefaultInit */
void   somDefaultInit(som3InitCtrl* ctrl)
{
/*
 *  A default initializer for a SOM object. Passing a null ctrl
 *  indicates to the receiver that its class is the class of the
 *  object being initialized, whereby the initializer will determine
 *  an appropriate control structure.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultInit)
	(this,ctrl);
}


/* method: somDestruct */
void   somDestruct(octet doFree, 
		som3DestructCtrl* ctrl)
{
/*
 *  The default destructor for a SOM object. A nonzero <doFree>
 *  indicates that the object storage should be freed by the
 *  object's class (via somDeallocate) after uninitialization.
 *  As with somDefaultInit, a null ctrl can be passed.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDestruct)
	(this,doFree,ctrl);
}


/* initializer method: somDefaultCopyInit */
void   somDefaultCopyInit(som3InitCtrl* ctrl, 
		SOMObject* fromObj)
{
/*
 *  A default copy constructor. Use this to make copies of objects for
 *  calling methods with "by-value" argument semantics.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultCopyInit)
	(this,ctrl,fromObj);
}


/* method: somDefaultAssign */
SOMPFileMediaAbstract*  somDefaultAssign(som3AssignCtrl* ctrl, 
		SOMObject* fromObj)
{
/*
 *  A default assignment operator. Use this to "assign" the state of one
 *  object to another.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultAssign)
	(this,ctrl,fromObj);
}


/* initializer method: somDefaultConstCopyInit */
void   somDefaultConstCopyInit(som3InitCtrl* ctrl, 
		SOMObject* fromObj)
{
/*
 *  A default copy constructor that uses a const fromObj.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultConstCopyInit)
	(this,ctrl,fromObj);
}


/* initializer method: somDefaultVCopyInit */
void   somDefaultVCopyInit(som3InitCtrl* ctrl, 
		SOMObject* fromObj)
{
/*
 *  A default copy constructor that uses a volatile fromObj.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultVCopyInit)
	(this,ctrl,fromObj);
}


/* initializer method: somDefaultConstVCopyInit */
void   somDefaultConstVCopyInit(som3InitCtrl* ctrl, 
		SOMObject* fromObj)
{
/*
 *  A default copy constructor that uses a const volatile fromObj.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultConstVCopyInit)
	(this,ctrl,fromObj);
}


/* method: somDefaultConstAssign */
SOMPFileMediaAbstract*  somDefaultConstAssign(som3AssignCtrl* ctrl, 
		SOMObject* fromObj)
{
/*
 *  A default assignment operator that uses a const fromObj.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultConstAssign)
	(this,ctrl,fromObj);
}


/* method: somDefaultVAssign */
SOMPFileMediaAbstract*  somDefaultVAssign(som3AssignCtrl* ctrl, 
		SOMObject* fromObj)
{
/*
 *  A default assignment operator that uses a volatile fromObj.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultVAssign)
	(this,ctrl,fromObj);
}


/* method: somDefaultConstVAssign */
SOMPFileMediaAbstract*  somDefaultConstVAssign(som3AssignCtrl* ctrl, 
		SOMObject* fromObj)
{
/*
 *  A default assignment operator that uses a const volatile fromObj.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDefaultConstVAssign)
	(this,ctrl,fromObj);
}


/* method: somInit */
void   somInit()
{
/*
 *  Obsolete but still supported. Override somDefaultInit instead of somInit.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somInit)
	(this);
}


/* method: somFree */
void   somFree()
{
/*
 *  Use as directed by framework implementations.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somFree)
	(this);
}


/* method: somUninit */
void   somUninit()
{
/*
 *  Obsolete but still supported. Override somDestruct instead of somUninit.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somUninit)
	(this);
}


/* method: somGetClass */
SOMClass*   somGetClass()
{
/*
 *  Return the receiver's class.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somGetClass)
	(this);
}


/* method: somGetClassName */
string   somGetClassName()
{
/*
 *  Return the name of the receiver's class.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somGetClassName)
	(this);
}


/* method: somGetSize */
long   somGetSize()
{
/*
 *  Return the size of the receiver.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somGetSize)
	(this);
}


/* method: somIsA */
boolean   somIsA(SOMClass* aClassObj)
{
/*
 *  Returns 1 (true) if the receiver responds to methods
 *  introduced by <aClassObj>, and 0 (false) otherwise.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somIsA)
	(this,aClassObj);
}


/* method: somIsInstanceOf */
boolean   somIsInstanceOf(SOMClass* aClassObj)
{
/*
 *  Returns 1 (true) if the receiver is an instance of
 *  <aClassObj> and 0 (false) otherwise.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somIsInstanceOf)
	(this,aClassObj);
}


/* method: somRespondsTo */
boolean   somRespondsTo(somId mId)
{
/*
 *  Returns 1 (true) if the indicated method can be invoked
 *  on the receiver and 0 (false) otherwise.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somRespondsTo)
	(this,mId);
}


/* va_list method: somDispatch */

/*
 *  This method provides a generic, class-specific dispatch mechanism.
 *  It accepts as input <retValue> a pointer to the memory area to be
 *  loaded with the result of dispatching the method indicated by
 *  <methodId> using the arguments in <ap>. <ap> contains the object
 *  on which the method is to be invoked as the first argument.
 */
/* the va_list invocation form */
boolean   SOMPFileMediaAbstract_somDispatch(somToken* retValue, 
		somId methodId, 
		va_list ap)
{return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatch)
	(this,retValue,methodId,ap);
}

/* the varargs invocation form */
boolean   somDispatch(somToken* retValue, 
		somId methodId, 
		...)
{
/*
 *  This method provides a generic, class-specific dispatch mechanism.
 *  It accepts as input <retValue> a pointer to the memory area to be
 *  loaded with the result of dispatching the method indicated by
 *  <methodId> using the arguments in <ap>. <ap> contains the object
 *  on which the method is to be invoked as the first argument.
 */
   va_list ap;
   va_start(ap, methodId);
   boolean __somResult = 
      SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatch)
	(this,retValue,methodId,ap);
   va_end(ap);
   return __somResult;
}


/* va_list method: somClassDispatch */

/*
 *  Like somDispatch, but method resolution for static methods is done
 *  according to the clsObj instance method table.
 */
/* the va_list invocation form */
boolean   SOMPFileMediaAbstract_somClassDispatch(SOMClass* clsObj, 
		somToken* retValue, 
		somId methodId, 
		va_list ap)
{return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somClassDispatch)
	(this,clsObj,retValue,methodId,ap);
}

/* the varargs invocation form */
boolean   somClassDispatch(SOMClass* clsObj, 
		somToken* retValue, 
		somId methodId, 
		...)
{
/*
 *  Like somDispatch, but method resolution for static methods is done
 *  according to the clsObj instance method table.
 */
   va_list ap;
   va_start(ap, methodId);
   boolean __somResult = 
      SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somClassDispatch)
	(this,clsObj,retValue,methodId,ap);
   va_end(ap);
   return __somResult;
}


/* method: somCastObj */
boolean   somCastObj(SOMClass* cls)
{
/*
 *  cast the receiving object to cls (which must be an ancestor of the
 *  objects true class. Returns true on success.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somCastObj)
	(this,cls);
}


/* method: somResetObj */
boolean   somResetObj()
{
/*
 *  reset an object to its true class. Returns true always.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somResetObj)
	(this);
}


/* va_list method: somDispatchV */

/*
 *  Obsolete. Use somDispatch instead.
 */
/* the va_list invocation form */
void   SOMPFileMediaAbstract_somDispatchV(somId methodId, 
		somId descriptor, 
		va_list ap)
{   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchV)
	(this,methodId,descriptor,ap);
}

/* the varargs invocation form */
void   somDispatchV(somId methodId, 
		somId descriptor, 
		...)
{
/*
 *  Obsolete. Use somDispatch instead.
 */
   va_list ap;
   va_start(ap, descriptor);
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchV)
	(this,methodId,descriptor,ap);
   va_end(ap);
}


/* va_list method: somDispatchL */

/*
 *  Obsolete. Use somDispatch instead.
 */
/* the va_list invocation form */
long   SOMPFileMediaAbstract_somDispatchL(somId methodId, 
		somId descriptor, 
		va_list ap)
{return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchL)
	(this,methodId,descriptor,ap);
}

/* the varargs invocation form */
long   somDispatchL(somId methodId, 
		somId descriptor, 
		...)
{
/*
 *  Obsolete. Use somDispatch instead.
 */
   va_list ap;
   va_start(ap, descriptor);
   long __somResult = 
      SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchL)
	(this,methodId,descriptor,ap);
   va_end(ap);
   return __somResult;
}


/* va_list method: somDispatchA */

/*
 *  Obsolete. Use somDispatch instead.
 */
/* the va_list invocation form */
void*   SOMPFileMediaAbstract_somDispatchA(somId methodId, 
		somId descriptor, 
		va_list ap)
{return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchA)
	(this,methodId,descriptor,ap);
}

/* the varargs invocation form */
void*   somDispatchA(somId methodId, 
		somId descriptor, 
		...)
{
/*
 *  Obsolete. Use somDispatch instead.
 */
   va_list ap;
   va_start(ap, descriptor);
   void* __somResult = 
      SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchA)
	(this,methodId,descriptor,ap);
   va_end(ap);
   return __somResult;
}


/* va_list method: somDispatchD */

/*
 *  Obsolete. Use somDispatch instead.
 */
/* the va_list invocation form */
double   SOMPFileMediaAbstract_somDispatchD(somId methodId, 
		somId descriptor, 
		va_list ap)
{return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchD)
	(this,methodId,descriptor,ap);
}

/* the varargs invocation form */
double   somDispatchD(somId methodId, 
		somId descriptor, 
		...)
{
/*
 *  Obsolete. Use somDispatch instead.
 */
   va_list ap;
   va_start(ap, descriptor);
   double __somResult = 
      SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDispatchD)
	(this,methodId,descriptor,ap);
   va_end(ap);
   return __somResult;
}


/* method: somPrintSelf */
SOMObject*   somPrintSelf()
{
/*
 *  Uses <SOMOutCharRoutine> to write a brief string with identifying
 *  information about this object.  The default implementation just gives
 *  the object's class name and its address in memory.
 *  <self> is returned.
 */
   return SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somPrintSelf)
	(this);
}


/* method: somDumpSelf */
void   somDumpSelf(long level)
{
/*
 *  Uses <SOMOutCharRoutine> to write a detailed description of this object
 *  and its current state.
 * 
 *  <level> indicates the nesting level for describing compound objects
 *  it must be greater than or equal to zero.  All lines in the
 *  description will be preceeded by <2*level> spaces.
 * 
 *  This routine only actually writes the data that concerns the object
 *  as a whole, such as class, and uses <somDumpSelfInt> to describe
 *  the object's current state.  This approach allows readable
 *  descriptions of compound objects to be constructed.
 * 
 *  Generally it is not necessary to override this method, if it is
 *  overriden it generally must be completely replaced.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDumpSelf)
	(this,level);
}


/* method: somDumpSelfInt */
void   somDumpSelfInt(long level)
{
/*
 *  Uses <SOMOutCharRoutine> to write in the current state of this object.
 *  Generally this method will need to be overridden.  When overriding
 *  it, begin by calling the parent class form of this method and then
 *  write in a description of your class's instance data. This will
 *  result in a description of all the object's instance data going
 *  from its root ancestor class to its specific class.
 */
   SOM_ResolveD(this,SOMPFileMediaAbstract,SOMObject,somDumpSelfInt)
	(this,level);
}



};   /* SOMPFileMediaAbstract */



#endif       /* SOM_SOMPFileMediaAbstract_xh */
