home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
tolkit45.zip
/
os2tk45
/
som
/
include
/
mlink.h
< prev
next >
Wrap
C/C++ Source or Header
|
1999-02-22
|
10KB
|
284 lines
/*
* This file was generated by the SOM Compiler.
* FileName: mlink.h.
* Generated using:
* SOM Precompiler somipc: 2.29.1.17
* SOM Emitter emith: 2.47
*/
/*
* COMPONENT_NAME: somuc
*
* ORIGINS: 82, 81, 27
*
*
* 25H7912 (C) COPYRIGHT International Business Machines Corp. 1992,1996,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.
*
* Copyright ⌐ 1988, 1989 Apple Computer, Inc. All rights reserved.
*
* CLASS_NAME: somf_MLinkable
*
* DESCRIPTION: This class defines the general attributes of objects that
* contain links. For example, TPrimitiveLinkedList uses
* somf_MLinkable.
*
*/
#ifndef SOM_somf_MLinkable_h
#define SOM_somf_MLinkable_h
#include <som.h>
/*
* -- 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))
/*
* Define the class name as an object type
*/
#ifndef somf_MLinkable
#define somf_MLinkable SOMObject
#endif
#include <somobj.h>
/*
* Start of bindings for IDL types
*/
#ifndef SOMClass
#define SOMClass SOMObject
#endif /* SOMClass */
/*
* End of bindings for IDL types.
*/
#define somf_MLinkable_MajorVersion 2
#define somf_MLinkable_MinorVersion 1
/*
* External name shortening if required
*/
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define somf_MLinkableNewClass c
#pragma linkage(c, system)
#define somf_MLinkableClassData d
#define somf_MLinkableCClassData x
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define somf_MLinkable_classObj somf_MLinkableClassData.classObject
#define _somf_MLinkable somf_MLinkable_classObj
/*
* Declare the class creation procedure
*/
SOMEXTERN SOMClass * SOMLINK somf_MLinkableNewClass(integer4 somtmajorVersion,
integer4 somtminorVersion);
#pragma linkage(somf_MLinkableNewClass, system)
/*
* Declare the class data structure
*/
SOMEXTERN struct somf_MLinkableClassDataStructure {
SOMClass *classObject;
somMToken somfGetNext;
somMToken somfSetNext;
somMToken somfGetPrevious;
somMToken somfSetPrevious;
somMToken somfMLinkableInit;
} SOMDLINK somf_MLinkableClassData;
/*
* Declare the C specific class data structure
*/
SOMEXTERN struct somf_MLinkableCClassDataStructure {
somMethodTabs parentMtab;
somDToken instanceDataToken;
} SOMDLINK somf_MLinkableCClassData;
/*
* New and Renew macros for somf_MLinkable
*/
#define somf_MLinkableNew() \
( _somf_MLinkable ? \
_somNew(_somf_MLinkable) \
: ( somf_MLinkableNewClass(\
somf_MLinkable_MajorVersion, \
somf_MLinkable_MinorVersion),\
_somNew(_somf_MLinkable)))
#define somf_MLinkableRenew(buf) \
( _somf_MLinkable ? \
_somRenew(_somf_MLinkable, buf) \
: ( somf_MLinkableNewClass(\
somf_MLinkable_MajorVersion, \
somf_MLinkable_MinorVersion),\
_somRenew(_somf_MLinkable, buf)))
/*
* Override method: somInit
*/
#define somf_MLinkable_somInit(somSelf) \
SOMObject_somInit(somSelf)
/*
* New Method: somfMLinkableInit
*/
typedef somf_MLinkable* SOMLINK somTP_somf_MLinkable_somfMLinkableInit(somf_MLinkable *somSelf, Environment *ev,
somf_MLinkable* n,
somf_MLinkable* p);
#pragma linkage(somTP_somf_MLinkable_somfMLinkableInit, system)
typedef somTP_somf_MLinkable_somfMLinkableInit *somTD_somf_MLinkable_somfMLinkableInit;
/*
* This method initialized the somf_MLinkable object using n and p.
*/
#define somMD_somf_MLinkable_somfMLinkableInit "::somf_MLinkable::somfMLinkableInit"
#define somf_MLinkable_somfMLinkableInit(somSelf,ev,n,p) \
(SOM_Resolve(somSelf, somf_MLinkable, somfMLinkableInit) \
(somSelf,ev,n,p))
#ifndef SOMGD_somfMLinkableInit
#if (defined(_somfMLinkableInit) || defined(__somfMLinkableInit))
#undef _somfMLinkableInit
#undef __somfMLinkableInit
#define SOMGD_somfMLinkableInit 1
#else
#define _somfMLinkableInit somf_MLinkable_somfMLinkableInit
#endif /* _somfMLinkableInit */
#endif /* SOMGD_somfMLinkableInit */
/*
* New Method: somfGetNext
*/
typedef somf_MLinkable* SOMLINK somTP_somf_MLinkable_somfGetNext(somf_MLinkable *somSelf, Environment *ev);
#pragma linkage(somTP_somf_MLinkable_somfGetNext, system)
typedef somTP_somf_MLinkable_somfGetNext *somTD_somf_MLinkable_somfGetNext;
/*
* This method returns a pointer to the next somf_MLinkable.
*/
#define somMD_somf_MLinkable_somfGetNext "::somf_MLinkable::somfGetNext"
#define somf_MLinkable_somfGetNext(somSelf,ev) \
(SOM_Resolve(somSelf, somf_MLinkable, somfGetNext) \
(somSelf,ev))
#ifndef SOMGD_somfGetNext
#if (defined(_somfGetNext) || defined(__somfGetNext))
#undef _somfGetNext
#undef __somfGetNext
#define SOMGD_somfGetNext 1
#else
#define _somfGetNext somf_MLinkable_somfGetNext
#endif /* _somfGetNext */
#endif /* SOMGD_somfGetNext */
/*
* New Method: somfSetNext
*/
typedef void SOMLINK somTP_somf_MLinkable_somfSetNext(somf_MLinkable *somSelf, Environment *ev,
somf_MLinkable* aLink);
#pragma linkage(somTP_somf_MLinkable_somfSetNext, system)
typedef somTP_somf_MLinkable_somfSetNext *somTD_somf_MLinkable_somfSetNext;
/*
* This method sets the pointer to the next somf_MLinkable.
*/
#define somMD_somf_MLinkable_somfSetNext "::somf_MLinkable::somfSetNext"
#define somf_MLinkable_somfSetNext(somSelf,ev,aLink) \
(SOM_Resolve(somSelf, somf_MLinkable, somfSetNext) \
(somSelf,ev,aLink))
#ifndef SOMGD_somfSetNext
#if (defined(_somfSetNext) || defined(__somfSetNext))
#undef _somfSetNext
#undef __somfSetNext
#define SOMGD_somfSetNext 1
#else
#define _somfSetNext somf_MLinkable_somfSetNext
#endif /* _somfSetNext */
#endif /* SOMGD_somfSetNext */
/*
* New Method: somfGetPrevious
*/
typedef somf_MLinkable* SOMLINK somTP_somf_MLinkable_somfGetPrevious(somf_MLinkable *somSelf, Environment *ev);
#pragma linkage(somTP_somf_MLinkable_somfGetPrevious, system)
typedef somTP_somf_MLinkable_somfGetPrevious *somTD_somf_MLinkable_somfGetPrevious;
/*
* This method returns a pointer to the previous somf_MLinkable.
*/
#define somMD_somf_MLinkable_somfGetPrevious "::somf_MLinkable::somfGetPrevious"
#define somf_MLinkable_somfGetPrevious(somSelf,ev) \
(SOM_Resolve(somSelf, somf_MLinkable, somfGetPrevious) \
(somSelf,ev))
#ifndef SOMGD_somfGetPrevious
#if (defined(_somfGetPrevious) || defined(__somfGetPrevious))
#undef _somfGetPrevious
#undef __somfGetPrevious
#define SOMGD_somfGetPrevious 1
#else
#define _somfGetPrevious somf_MLinkable_somfGetPrevious
#endif /* _somfGetPrevious */
#endif /* SOMGD_somfGetPrevious */
/*
* New Method: somfSetPrevious
*/
typedef void SOMLINK somTP_somf_MLinkable_somfSetPrevious(somf_MLinkable *somSelf, Environment *ev,
somf_MLinkable* aLink);
#pragma linkage(somTP_somf_MLinkable_somfSetPrevious, system)
typedef somTP_somf_MLinkable_somfSetPrevious *somTD_somf_MLinkable_somfSetPrevious;
/*
* This method sets the pointer to the previous somf_MLinkable.
*/
#define somMD_somf_MLinkable_somfSetPrevious "::somf_MLinkable::somfSetPrevious"
#define somf_MLinkable_somfSetPrevious(somSelf,ev,aLink) \
(SOM_Resolve(somSelf, somf_MLinkable, somfSetPrevious) \
(somSelf,ev,aLink))
#ifndef SOMGD_somfSetPrevious
#if (defined(_somfSetPrevious) || defined(__somfSetPrevious))
#undef _somfSetPrevious
#undef __somfSetPrevious
#define SOMGD_somfSetPrevious 1
#else
#define _somfSetPrevious somf_MLinkable_somfSetPrevious
#endif /* _somfSetPrevious */
#endif /* SOMGD_somfSetPrevious */
#ifndef SOM_DONT_USE_INHERITED_MACROS
#define somf_MLinkable_somDefaultInit SOMObject_somDefaultInit
#define somf_MLinkable_somDestruct SOMObject_somDestruct
#define somf_MLinkable_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define somf_MLinkable_somDefaultAssign SOMObject_somDefaultAssign
#define somf_MLinkable_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define somf_MLinkable_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define somf_MLinkable_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define somf_MLinkable_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define somf_MLinkable_somDefaultVAssign SOMObject_somDefaultVAssign
#define somf_MLinkable_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define somf_MLinkable_somFree SOMObject_somFree
#define somf_MLinkable_somUninit SOMObject_somUninit
#define somf_MLinkable_somGetClass SOMObject_somGetClass
#define somf_MLinkable_somGetClassName SOMObject_somGetClassName
#define somf_MLinkable_somGetSize SOMObject_somGetSize
#define somf_MLinkable_somIsA SOMObject_somIsA
#define somf_MLinkable_somIsInstanceOf SOMObject_somIsInstanceOf
#define somf_MLinkable_somRespondsTo SOMObject_somRespondsTo
#define somf_MLinkable_somDispatch SOMObject_somDispatch
#define somf_MLinkable_somClassDispatch SOMObject_somClassDispatch
#define somf_MLinkable_somCastObj SOMObject_somCastObj
#define somf_MLinkable_somResetObj SOMObject_somResetObj
#define somf_MLinkable_somDispatchV SOMObject_somDispatchV
#define somf_MLinkable_somDispatchL SOMObject_somDispatchL
#define somf_MLinkable_somDispatchA SOMObject_somDispatchA
#define somf_MLinkable_somDispatchD SOMObject_somDispatchD
#define somf_MLinkable_somPrintSelf SOMObject_somPrintSelf
#define somf_MLinkable_somDumpSelf SOMObject_somDumpSelf
#define somf_MLinkable_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */
#endif /* SOM_somf_MLinkable_h */