
/*
 * This file was generated by the SOM Compiler.
 * FileName: omgestio.h.
 * Generated using:
 *     SOM Precompiler somipc: 2.29.1.19
 *     SOM Emitter emith.dll: 2.31.1.64
 */

#ifndef SOM_Module_omgestio_CosLifeCycle_defined
#define SOM_Module_omgestio_CosLifeCycle_defined 1

/*
 * The SOM_STRICT_IDL macro means that we can ignore stars
 * in our declarations of objects.
 */
#define SOM_STRICT_IDL 1

#include <som.h>

/*
 * Start of bindings for IDL types
 */

#ifndef SOMClass
    #define SOMClass SOMObject
#endif /* SOMClass */
#ifndef CosObjectIdentity_IdentifiableObject
    #define CosObjectIdentity_IdentifiableObject SOMObject
#endif /* CosObjectIdentity_IdentifiableObject */
#ifndef CosStream_Streamable
    #define CosStream_Streamable SOMObject
#endif /* CosStream_Streamable */
#ifndef CosStream_StreamableFactory
    #define CosStream_StreamableFactory SOMObject
#endif /* CosStream_StreamableFactory */

/*
 * End of bindings for IDL types.
 */
#endif /* SOM_Module_omgestio_CosLifeCycle_defined */

#ifndef SOM_CosLifeCycle_FactoryFinder_h
#define SOM_CosLifeCycle_FactoryFinder_h


/*
 * The SOM_STRICT_IDL macro means that we can ignore stars
 * in our declarations of objects.
 */
#define SOM_STRICT_IDL 1


#include <som.h>
#ifndef SOM_IMPORTEXPORT_somestrm_omgestio
#ifdef SOM_DLL_somestrm
	/* export semantics */
	#if defined(SOM_DEFFILE_somestrm)\
	||(defined(SOM_DEFFILE_BY_DEFAULT)&&!defined(SOM_NODEFFILE_somestrm))\
	|| !defined(SOM_Module_omgestio_Source)
	#define SOM_IMPORTEXPORT_somestrm_omgestio
	#else
	#define SOM_IMPORTEXPORT_somestrm_omgestio SOMDLLEXPORT
	#endif
#else
	#define SOM_IMPORTEXPORT_somestrm_omgestio SOMDLLIMPORT
#endif
#endif

/*
 * -- 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 CosLifeCycle_FactoryFinder
#define CosLifeCycle_FactoryFinder SOMObject
#endif

/*
 * Include Parent Bindings
 */
#ifndef SOM_SOMObject_h
#ifdef SOMLOCALINCLUDES
#include "somobj.h"
#else
#include <somobj.h>
#endif
#endif

/*
 * Start of bindings for IDL types
 */


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

#define CosLifeCycle_FactoryFinder_MajorVersion 0
#define CosLifeCycle_FactoryFinder_MinorVersion 0

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOM_IMPORTEXPORT_somestrm_omgestio SOMClass  SOMLINK CosLifeCycle_FactoryFinderNewClass(integer4 somtmajorVersion,
		integer4 somtminorVersion);

/*
 * Declare the ABI 2 ClassData structure
 */
SOMEXTERN struct CosLifeCycle_FactoryFinderClassDataStructure {
	SOMClass classObject;
} SOM_IMPORTEXPORT_somestrm_omgestio SOMDLINK CosLifeCycle_FactoryFinderClassData;

/*
 * Declare the ABI 2 CClassData structure
 */
SOMEXTERN struct CosLifeCycle_FactoryFinderCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
} SOM_IMPORTEXPORT_somestrm_omgestio SOMDLINK CosLifeCycle_FactoryFinderCClassData;

/*
 * Class Object and Method Token Macros
 */
#define _SOMCLASS_CosLifeCycle_FactoryFinder (CosLifeCycle_FactoryFinderClassData.classObject)
#ifndef SOMGD_CosLifeCycle_FactoryFinder
    #if (defined(_CosLifeCycle_FactoryFinder) || defined(__CosLifeCycle_FactoryFinder))
        #undef _CosLifeCycle_FactoryFinder
        #undef __CosLifeCycle_FactoryFinder
        #define SOMGD_CosLifeCycle_FactoryFinder 1
    #else
        #define _CosLifeCycle_FactoryFinder _SOMCLASS_CosLifeCycle_FactoryFinder
    #endif /* _CosLifeCycle_FactoryFinder */
#endif /* SOMGD_CosLifeCycle_FactoryFinder */
#define CosLifeCycle_FactoryFinder_classObj _SOMCLASS_CosLifeCycle_FactoryFinder
#define _SOMMTOKEN_CosLifeCycle_FactoryFinder(method) ((somMToken)CosLifeCycle_FactoryFinderClassData.method)

/*
 * New and Renew macros for CosLifeCycle_FactoryFinder
 */
#define CosLifeCycle_FactoryFinderNew() \
   ( _CosLifeCycle_FactoryFinder ? \
	_somNew(_CosLifeCycle_FactoryFinder) \
	: ( CosLifeCycle_FactoryFinderNewClass(\
		CosLifeCycle_FactoryFinder_MajorVersion, \
		CosLifeCycle_FactoryFinder_MinorVersion),\
	   _somNew(_CosLifeCycle_FactoryFinder)))
#define CosLifeCycle_FactoryFinderRenew(buf) \
   ( _CosLifeCycle_FactoryFinder ? \
	_somRenew(_CosLifeCycle_FactoryFinder, buf) \
	: ( CosLifeCycle_FactoryFinderNewClass(\
		CosLifeCycle_FactoryFinder_MajorVersion, \
		CosLifeCycle_FactoryFinder_MinorVersion),\
	   _somRenew(_CosLifeCycle_FactoryFinder, buf)))

/*
 * Full Names for Inherited Methods
 */

#ifndef SOM_DONT_USE_INHERITED_MACROS
#define CosLifeCycle_FactoryFinder_somDefaultInit SOMObject_somDefaultInit
#define CosLifeCycle_FactoryFinder_somDestruct SOMObject_somDestruct
#define CosLifeCycle_FactoryFinder_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define CosLifeCycle_FactoryFinder_somDefaultAssign SOMObject_somDefaultAssign
#define CosLifeCycle_FactoryFinder_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define CosLifeCycle_FactoryFinder_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define CosLifeCycle_FactoryFinder_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define CosLifeCycle_FactoryFinder_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define CosLifeCycle_FactoryFinder_somDefaultVAssign SOMObject_somDefaultVAssign
#define CosLifeCycle_FactoryFinder_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define CosLifeCycle_FactoryFinder_somInit SOMObject_somInit
#define CosLifeCycle_FactoryFinder_somUninit SOMObject_somUninit
#define CosLifeCycle_FactoryFinder_somFree SOMObject_somFree
#define CosLifeCycle_FactoryFinder_somGetClass SOMObject_somGetClass
#define CosLifeCycle_FactoryFinder_somGetClassName SOMObject_somGetClassName
#define CosLifeCycle_FactoryFinder_somGetSize SOMObject_somGetSize
#define CosLifeCycle_FactoryFinder_somIsA SOMObject_somIsA
#define CosLifeCycle_FactoryFinder_somIsInstanceOf SOMObject_somIsInstanceOf
#define CosLifeCycle_FactoryFinder_somRespondsTo SOMObject_somRespondsTo
#define CosLifeCycle_FactoryFinder_somDispatch SOMObject_somDispatch
#define CosLifeCycle_FactoryFinder_somClassDispatch SOMObject_somClassDispatch
#define CosLifeCycle_FactoryFinder_somCastObj SOMObject_somCastObj
#define CosLifeCycle_FactoryFinder_somResetObj SOMObject_somResetObj
#define CosLifeCycle_FactoryFinder_somPrintSelf SOMObject_somPrintSelf
#define CosLifeCycle_FactoryFinder_somDumpSelf SOMObject_somDumpSelf
#define CosLifeCycle_FactoryFinder_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_CosLifeCycle_FactoryFinder_h */

#ifndef SOM_Module_omgestio_CosStream_defined
#define SOM_Module_omgestio_CosStream_defined 1

/*
 * The SOM_STRICT_IDL macro means that we can ignore stars
 * in our declarations of objects.
 */
#define SOM_STRICT_IDL 1

#include <som.h>

/*
 * Start of bindings for IDL types
 */

#define ex_CosStream_ObjectCreationError "::CosStream::ObjectCreationError"
#define CosStream_ObjectCreationError NULL
#define ex_CosStream_StreamDataFormatError "::CosStream::StreamDataFormatError"
#define CosStream_StreamDataFormatError NULL
#ifndef CosStream_Streamable
    #define CosStream_Streamable SOMObject
#endif /* CosStream_Streamable */
#ifndef CosStream_StreamableFactory
    #define CosStream_StreamableFactory SOMObject
#endif /* CosStream_StreamableFactory */

#ifndef SOM_DONT_USE_SHORT_NAMES
#ifndef SOMTGD_ex_ObjectCreationError
    #ifdef ex_ObjectCreationError
        #undef ex_ObjectCreationError
        #define SOMTGD_ex_ObjectCreationError 1
    #else
        #define ex_ObjectCreationError ex_CosStream_ObjectCreationError
    #endif /* ex_ObjectCreationError */
#endif /* SOMTGD_ex_ObjectCreationError */
#ifndef SOMTGD_ObjectCreationError
    #ifdef ObjectCreationError
        #undef ObjectCreationError
        #define SOMTGD_ObjectCreationError 1
    #else
        #define ObjectCreationError CosStream_ObjectCreationError
    #endif /* ObjectCreationError */
#endif /* SOMTGD_ObjectCreationError */
#ifndef SOMTGD_ex_StreamDataFormatError
    #ifdef ex_StreamDataFormatError
        #undef ex_StreamDataFormatError
        #define SOMTGD_ex_StreamDataFormatError 1
    #else
        #define ex_StreamDataFormatError ex_CosStream_StreamDataFormatError
    #endif /* ex_StreamDataFormatError */
#endif /* SOMTGD_ex_StreamDataFormatError */
#ifndef SOMTGD_StreamDataFormatError
    #ifdef StreamDataFormatError
        #undef StreamDataFormatError
        #define SOMTGD_StreamDataFormatError 1
    #else
        #define StreamDataFormatError CosStream_StreamDataFormatError
    #endif /* StreamDataFormatError */
#endif /* SOMTGD_StreamDataFormatError */
#endif /* SOM_DONT_USE_SHORT_NAMES */

/*
 * End of bindings for IDL types.
 */
#endif /* SOM_Module_omgestio_CosStream_defined */

#ifndef SOM_CosStream_StreamIO_h
#define SOM_CosStream_StreamIO_h


/*
 * The SOM_STRICT_IDL macro means that we can ignore stars
 * in our declarations of objects.
 */
#define SOM_STRICT_IDL 1


#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 CosStream_StreamIO
#define CosStream_StreamIO SOMObject
#endif
/*
 *  The StreamIO interface defines an abstract class without any
 *  implementation.  It defines only the interfaces in the OMG
 *  Externalization Service for the StreamIO class.
 *  Public methods used by client objects to internalize and
 *  externalize their internal state.
 * 
 */

/*
 * Include Parent Bindings
 */
#ifndef SOM_SOMObject_h
#ifdef SOMLOCALINCLUDES
#include "somobj.h"
#else
#include <somobj.h>
#endif
#endif

/*
 * Start of bindings for IDL types
 */


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

#define CosStream_StreamIO_MajorVersion 3
#define CosStream_StreamIO_MinorVersion 0

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOM_IMPORTEXPORT_somestrm_omgestio SOMClass  SOMLINK CosStream_StreamIONewClass(integer4 somtmajorVersion,
		integer4 somtminorVersion);

/*
 * Declare the ABI 2 ClassData structure
 */
SOMEXTERN struct CosStream_StreamIOClassDataStructure {
	SOMClass classObject;
	somMToken read_short;
	somMToken write_short;
	somMToken read_long;
	somMToken write_long;
	somMToken read_unsigned_short;
	somMToken write_unsigned_short;
	somMToken read_unsigned_long;
	somMToken write_unsigned_long;
	somMToken read_float;
	somMToken write_float;
	somMToken read_double;
	somMToken write_double;
	somMToken read_boolean;
	somMToken write_boolean;
	somMToken read_char;
	somMToken write_char;
	somMToken read_octet;
	somMToken write_octet;
	somMToken read_string;
	somMToken write_string;
	somMToken read_object;
	somMToken write_object;
} SOM_IMPORTEXPORT_somestrm_omgestio SOMDLINK CosStream_StreamIOClassData;

/*
 * Declare the ABI 2 CClassData structure
 */
SOMEXTERN struct CosStream_StreamIOCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
} SOM_IMPORTEXPORT_somestrm_omgestio SOMDLINK CosStream_StreamIOCClassData;

/*
 * Class Object and Method Token Macros
 */
#define _SOMCLASS_CosStream_StreamIO (CosStream_StreamIOClassData.classObject)
#ifndef SOMGD_CosStream_StreamIO
    #if (defined(_CosStream_StreamIO) || defined(__CosStream_StreamIO))
        #undef _CosStream_StreamIO
        #undef __CosStream_StreamIO
        #define SOMGD_CosStream_StreamIO 1
    #else
        #define _CosStream_StreamIO _SOMCLASS_CosStream_StreamIO
    #endif /* _CosStream_StreamIO */
#endif /* SOMGD_CosStream_StreamIO */
#define CosStream_StreamIO_classObj _SOMCLASS_CosStream_StreamIO
#define _SOMMTOKEN_CosStream_StreamIO(method) ((somMToken)CosStream_StreamIOClassData.method)

/*
 * New and Renew macros for CosStream_StreamIO
 */
#define CosStream_StreamIONew() \
   ( _CosStream_StreamIO ? \
	_somNew(_CosStream_StreamIO) \
	: ( CosStream_StreamIONewClass(\
		CosStream_StreamIO_MajorVersion, \
		CosStream_StreamIO_MinorVersion),\
	   _somNew(_CosStream_StreamIO)))
#define CosStream_StreamIORenew(buf) \
   ( _CosStream_StreamIO ? \
	_somRenew(_CosStream_StreamIO, buf) \
	: ( CosStream_StreamIONewClass(\
		CosStream_StreamIO_MajorVersion, \
		CosStream_StreamIO_MinorVersion),\
	   _somRenew(_CosStream_StreamIO, buf)))

/*
 * New Method: write_string
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_string(CosStream_StreamIO somSelf, Environment *ev, 
		string item);
typedef somTP_CosStream_StreamIO_write_string *somTD_CosStream_StreamIO_write_string;
#define somMD_CosStream_StreamIO_write_string "::CosStream::StreamIO::write_string"
#define CosStream_StreamIO_write_string(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_string) \
	(somSelf,ev,item))
#ifndef SOMGD_write_string
    #if (defined(_write_string) || defined(__write_string))
        #undef _write_string
        #undef __write_string
        #define SOMGD_write_string 1
    #else
        #define _write_string CosStream_StreamIO_write_string
    #endif /* _write_string */
#endif /* SOMGD_write_string */

/*
 * New Method: write_char
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_char(CosStream_StreamIO somSelf, Environment *ev, 
		char item);
typedef somTP_CosStream_StreamIO_write_char *somTD_CosStream_StreamIO_write_char;
#define somMD_CosStream_StreamIO_write_char "::CosStream::StreamIO::write_char"
#define CosStream_StreamIO_write_char(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_char) \
	(somSelf,ev,item))
#ifndef SOMGD_write_char
    #if (defined(_write_char) || defined(__write_char))
        #undef _write_char
        #undef __write_char
        #define SOMGD_write_char 1
    #else
        #define _write_char CosStream_StreamIO_write_char
    #endif /* _write_char */
#endif /* SOMGD_write_char */

/*
 * New Method: write_octet
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_octet(CosStream_StreamIO somSelf, Environment *ev, 
		octet item);
typedef somTP_CosStream_StreamIO_write_octet *somTD_CosStream_StreamIO_write_octet;
#define somMD_CosStream_StreamIO_write_octet "::CosStream::StreamIO::write_octet"
#define CosStream_StreamIO_write_octet(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_octet) \
	(somSelf,ev,item))
#ifndef SOMGD_write_octet
    #if (defined(_write_octet) || defined(__write_octet))
        #undef _write_octet
        #undef __write_octet
        #define SOMGD_write_octet 1
    #else
        #define _write_octet CosStream_StreamIO_write_octet
    #endif /* _write_octet */
#endif /* SOMGD_write_octet */

/*
 * New Method: write_unsigned_long
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_unsigned_long(CosStream_StreamIO somSelf, Environment *ev, 
		unsigned long item);
typedef somTP_CosStream_StreamIO_write_unsigned_long *somTD_CosStream_StreamIO_write_unsigned_long;
#define somMD_CosStream_StreamIO_write_unsigned_long "::CosStream::StreamIO::write_unsigned_long"
#define CosStream_StreamIO_write_unsigned_long(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_unsigned_long) \
	(somSelf,ev,item))
#ifndef SOMGD_write_unsigned_long
    #if (defined(_write_unsigned_long) || defined(__write_unsigned_long))
        #undef _write_unsigned_long
        #undef __write_unsigned_long
        #define SOMGD_write_unsigned_long 1
    #else
        #define _write_unsigned_long CosStream_StreamIO_write_unsigned_long
    #endif /* _write_unsigned_long */
#endif /* SOMGD_write_unsigned_long */

/*
 * New Method: write_unsigned_short
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_unsigned_short(CosStream_StreamIO somSelf, Environment *ev, 
		unsigned short item);
typedef somTP_CosStream_StreamIO_write_unsigned_short *somTD_CosStream_StreamIO_write_unsigned_short;
#define somMD_CosStream_StreamIO_write_unsigned_short "::CosStream::StreamIO::write_unsigned_short"
#define CosStream_StreamIO_write_unsigned_short(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_unsigned_short) \
	(somSelf,ev,item))
#ifndef SOMGD_write_unsigned_short
    #if (defined(_write_unsigned_short) || defined(__write_unsigned_short))
        #undef _write_unsigned_short
        #undef __write_unsigned_short
        #define SOMGD_write_unsigned_short 1
    #else
        #define _write_unsigned_short CosStream_StreamIO_write_unsigned_short
    #endif /* _write_unsigned_short */
#endif /* SOMGD_write_unsigned_short */

/*
 * New Method: write_long
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_long(CosStream_StreamIO somSelf, Environment *ev, 
		long item);
typedef somTP_CosStream_StreamIO_write_long *somTD_CosStream_StreamIO_write_long;
#define somMD_CosStream_StreamIO_write_long "::CosStream::StreamIO::write_long"
#define CosStream_StreamIO_write_long(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_long) \
	(somSelf,ev,item))
#ifndef SOMGD_write_long
    #if (defined(_write_long) || defined(__write_long))
        #undef _write_long
        #undef __write_long
        #define SOMGD_write_long 1
    #else
        #define _write_long CosStream_StreamIO_write_long
    #endif /* _write_long */
#endif /* SOMGD_write_long */

/*
 * New Method: write_short
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_short(CosStream_StreamIO somSelf, Environment *ev, 
		short item);
typedef somTP_CosStream_StreamIO_write_short *somTD_CosStream_StreamIO_write_short;
#define somMD_CosStream_StreamIO_write_short "::CosStream::StreamIO::write_short"
#define CosStream_StreamIO_write_short(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_short) \
	(somSelf,ev,item))
#ifndef SOMGD_write_short
    #if (defined(_write_short) || defined(__write_short))
        #undef _write_short
        #undef __write_short
        #define SOMGD_write_short 1
    #else
        #define _write_short CosStream_StreamIO_write_short
    #endif /* _write_short */
#endif /* SOMGD_write_short */

/*
 * New Method: write_float
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_float(CosStream_StreamIO somSelf, Environment *ev, 
		float item);
typedef somTP_CosStream_StreamIO_write_float *somTD_CosStream_StreamIO_write_float;
#define somMD_CosStream_StreamIO_write_float "::CosStream::StreamIO::write_float"
#define CosStream_StreamIO_write_float(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_float) \
	(somSelf,ev,item))
#ifndef SOMGD_write_float
    #if (defined(_write_float) || defined(__write_float))
        #undef _write_float
        #undef __write_float
        #define SOMGD_write_float 1
    #else
        #define _write_float CosStream_StreamIO_write_float
    #endif /* _write_float */
#endif /* SOMGD_write_float */

/*
 * New Method: write_double
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_double(CosStream_StreamIO somSelf, Environment *ev, 
		double item);
typedef somTP_CosStream_StreamIO_write_double *somTD_CosStream_StreamIO_write_double;
#define somMD_CosStream_StreamIO_write_double "::CosStream::StreamIO::write_double"
#define CosStream_StreamIO_write_double(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_double) \
	(somSelf,ev,item))
#ifndef SOMGD_write_double
    #if (defined(_write_double) || defined(__write_double))
        #undef _write_double
        #undef __write_double
        #define SOMGD_write_double 1
    #else
        #define _write_double CosStream_StreamIO_write_double
    #endif /* _write_double */
#endif /* SOMGD_write_double */

/*
 * New Method: write_boolean
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_boolean(CosStream_StreamIO somSelf, Environment *ev, 
		boolean item);
typedef somTP_CosStream_StreamIO_write_boolean *somTD_CosStream_StreamIO_write_boolean;
#define somMD_CosStream_StreamIO_write_boolean "::CosStream::StreamIO::write_boolean"
#define CosStream_StreamIO_write_boolean(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_boolean) \
	(somSelf,ev,item))
#ifndef SOMGD_write_boolean
    #if (defined(_write_boolean) || defined(__write_boolean))
        #undef _write_boolean
        #undef __write_boolean
        #define SOMGD_write_boolean 1
    #else
        #define _write_boolean CosStream_StreamIO_write_boolean
    #endif /* _write_boolean */
#endif /* SOMGD_write_boolean */

/*
 * New Method: write_object
 */
typedef void   SOMLINK somTP_CosStream_StreamIO_write_object(CosStream_StreamIO somSelf, Environment *ev, 
		CosStream_Streamable item);
typedef somTP_CosStream_StreamIO_write_object *somTD_CosStream_StreamIO_write_object;
#define somMD_CosStream_StreamIO_write_object "::CosStream::StreamIO::write_object"
#define CosStream_StreamIO_write_object(somSelf,ev,item) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, write_object) \
	(somSelf,ev,item))
#ifndef SOMGD_write_object
    #if (defined(_write_object) || defined(__write_object))
        #undef _write_object
        #undef __write_object
        #define SOMGD_write_object 1
    #else
        #define _write_object CosStream_StreamIO_write_object
    #endif /* _write_object */
#endif /* SOMGD_write_object */

/*
 * New Method: read_string
 */
typedef string   SOMLINK somTP_CosStream_StreamIO_read_string(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_string *somTD_CosStream_StreamIO_read_string;
#define somMD_CosStream_StreamIO_read_string "::CosStream::StreamIO::read_string"
#define CosStream_StreamIO_read_string(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_string) \
	(somSelf,ev))
#ifndef SOMGD_read_string
    #if (defined(_read_string) || defined(__read_string))
        #undef _read_string
        #undef __read_string
        #define SOMGD_read_string 1
    #else
        #define _read_string CosStream_StreamIO_read_string
    #endif /* _read_string */
#endif /* SOMGD_read_string */

/*
 * New Method: read_char
 */
typedef char   SOMLINK somTP_CosStream_StreamIO_read_char(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_char *somTD_CosStream_StreamIO_read_char;
#define somMD_CosStream_StreamIO_read_char "::CosStream::StreamIO::read_char"
#define CosStream_StreamIO_read_char(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_char) \
	(somSelf,ev))
#ifndef SOMGD_read_char
    #if (defined(_read_char) || defined(__read_char))
        #undef _read_char
        #undef __read_char
        #define SOMGD_read_char 1
    #else
        #define _read_char CosStream_StreamIO_read_char
    #endif /* _read_char */
#endif /* SOMGD_read_char */

/*
 * New Method: read_octet
 */
typedef octet   SOMLINK somTP_CosStream_StreamIO_read_octet(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_octet *somTD_CosStream_StreamIO_read_octet;
#define somMD_CosStream_StreamIO_read_octet "::CosStream::StreamIO::read_octet"
#define CosStream_StreamIO_read_octet(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_octet) \
	(somSelf,ev))
#ifndef SOMGD_read_octet
    #if (defined(_read_octet) || defined(__read_octet))
        #undef _read_octet
        #undef __read_octet
        #define SOMGD_read_octet 1
    #else
        #define _read_octet CosStream_StreamIO_read_octet
    #endif /* _read_octet */
#endif /* SOMGD_read_octet */

/*
 * New Method: read_unsigned_long
 */
typedef unsigned long   SOMLINK somTP_CosStream_StreamIO_read_unsigned_long(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_unsigned_long *somTD_CosStream_StreamIO_read_unsigned_long;
#define somMD_CosStream_StreamIO_read_unsigned_long "::CosStream::StreamIO::read_unsigned_long"
#define CosStream_StreamIO_read_unsigned_long(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_unsigned_long) \
	(somSelf,ev))
#ifndef SOMGD_read_unsigned_long
    #if (defined(_read_unsigned_long) || defined(__read_unsigned_long))
        #undef _read_unsigned_long
        #undef __read_unsigned_long
        #define SOMGD_read_unsigned_long 1
    #else
        #define _read_unsigned_long CosStream_StreamIO_read_unsigned_long
    #endif /* _read_unsigned_long */
#endif /* SOMGD_read_unsigned_long */

/*
 * New Method: read_unsigned_short
 */
typedef unsigned short   SOMLINK somTP_CosStream_StreamIO_read_unsigned_short(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_unsigned_short *somTD_CosStream_StreamIO_read_unsigned_short;
#define somMD_CosStream_StreamIO_read_unsigned_short "::CosStream::StreamIO::read_unsigned_short"
#define CosStream_StreamIO_read_unsigned_short(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_unsigned_short) \
	(somSelf,ev))
#ifndef SOMGD_read_unsigned_short
    #if (defined(_read_unsigned_short) || defined(__read_unsigned_short))
        #undef _read_unsigned_short
        #undef __read_unsigned_short
        #define SOMGD_read_unsigned_short 1
    #else
        #define _read_unsigned_short CosStream_StreamIO_read_unsigned_short
    #endif /* _read_unsigned_short */
#endif /* SOMGD_read_unsigned_short */

/*
 * New Method: read_long
 */
typedef long   SOMLINK somTP_CosStream_StreamIO_read_long(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_long *somTD_CosStream_StreamIO_read_long;
#define somMD_CosStream_StreamIO_read_long "::CosStream::StreamIO::read_long"
#define CosStream_StreamIO_read_long(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_long) \
	(somSelf,ev))
#ifndef SOMGD_read_long
    #if (defined(_read_long) || defined(__read_long))
        #undef _read_long
        #undef __read_long
        #define SOMGD_read_long 1
    #else
        #define _read_long CosStream_StreamIO_read_long
    #endif /* _read_long */
#endif /* SOMGD_read_long */

/*
 * New Method: read_short
 */
typedef short   SOMLINK somTP_CosStream_StreamIO_read_short(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_short *somTD_CosStream_StreamIO_read_short;
#define somMD_CosStream_StreamIO_read_short "::CosStream::StreamIO::read_short"
#define CosStream_StreamIO_read_short(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_short) \
	(somSelf,ev))
#ifndef SOMGD_read_short
    #if (defined(_read_short) || defined(__read_short))
        #undef _read_short
        #undef __read_short
        #define SOMGD_read_short 1
    #else
        #define _read_short CosStream_StreamIO_read_short
    #endif /* _read_short */
#endif /* SOMGD_read_short */

/*
 * New Method: read_float
 */
typedef float   SOMLINK somTP_CosStream_StreamIO_read_float(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_float *somTD_CosStream_StreamIO_read_float;
#define somMD_CosStream_StreamIO_read_float "::CosStream::StreamIO::read_float"
#define CosStream_StreamIO_read_float(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_float) \
	(somSelf,ev))
#ifndef SOMGD_read_float
    #if (defined(_read_float) || defined(__read_float))
        #undef _read_float
        #undef __read_float
        #define SOMGD_read_float 1
    #else
        #define _read_float CosStream_StreamIO_read_float
    #endif /* _read_float */
#endif /* SOMGD_read_float */

/*
 * New Method: read_double
 */
typedef double   SOMLINK somTP_CosStream_StreamIO_read_double(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_double *somTD_CosStream_StreamIO_read_double;
#define somMD_CosStream_StreamIO_read_double "::CosStream::StreamIO::read_double"
#define CosStream_StreamIO_read_double(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_double) \
	(somSelf,ev))
#ifndef SOMGD_read_double
    #if (defined(_read_double) || defined(__read_double))
        #undef _read_double
        #undef __read_double
        #define SOMGD_read_double 1
    #else
        #define _read_double CosStream_StreamIO_read_double
    #endif /* _read_double */
#endif /* SOMGD_read_double */

/*
 * New Method: read_boolean
 */
typedef boolean   SOMLINK somTP_CosStream_StreamIO_read_boolean(CosStream_StreamIO somSelf, Environment *ev);
typedef somTP_CosStream_StreamIO_read_boolean *somTD_CosStream_StreamIO_read_boolean;
/*
 *  D23362
 *     Streamable read_object(in CosLifeCycle::FactoryFinder ff,
 *                            in Streamable obj) raises(StreamDataFormatError);
 * 
 *   The OMG spec also has write_graph() and read_graph() but we omitted
 *   them because compound externalization is not implemented.
 * 
 */
#define somMD_CosStream_StreamIO_read_boolean "::CosStream::StreamIO::read_boolean"
#define CosStream_StreamIO_read_boolean(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamIO, read_boolean) \
	(somSelf,ev))
#ifndef SOMGD_read_boolean
    #if (defined(_read_boolean) || defined(__read_boolean))
        #undef _read_boolean
        #undef __read_boolean
        #define SOMGD_read_boolean 1
    #else
        #define _read_boolean CosStream_StreamIO_read_boolean
    #endif /* _read_boolean */
#endif /* SOMGD_read_boolean */

/*
 * Full Names for Inherited Methods
 */
/* overridden methods */
#define CosStream_StreamIO_somDefaultInit SOMObject_somDefaultInit
#define CosStream_StreamIO_somDestruct SOMObject_somDestruct

#ifndef SOM_DONT_USE_INHERITED_MACROS
#define CosStream_StreamIO_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define CosStream_StreamIO_somDefaultAssign SOMObject_somDefaultAssign
#define CosStream_StreamIO_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define CosStream_StreamIO_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define CosStream_StreamIO_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define CosStream_StreamIO_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define CosStream_StreamIO_somDefaultVAssign SOMObject_somDefaultVAssign
#define CosStream_StreamIO_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define CosStream_StreamIO_somInit SOMObject_somInit
#define CosStream_StreamIO_somUninit SOMObject_somUninit
#define CosStream_StreamIO_somFree SOMObject_somFree
#define CosStream_StreamIO_somGetClass SOMObject_somGetClass
#define CosStream_StreamIO_somGetClassName SOMObject_somGetClassName
#define CosStream_StreamIO_somGetSize SOMObject_somGetSize
#define CosStream_StreamIO_somIsA SOMObject_somIsA
#define CosStream_StreamIO_somIsInstanceOf SOMObject_somIsInstanceOf
#define CosStream_StreamIO_somRespondsTo SOMObject_somRespondsTo
#define CosStream_StreamIO_somDispatch SOMObject_somDispatch
#define CosStream_StreamIO_somClassDispatch SOMObject_somClassDispatch
#define CosStream_StreamIO_somCastObj SOMObject_somCastObj
#define CosStream_StreamIO_somResetObj SOMObject_somResetObj
#define CosStream_StreamIO_somPrintSelf SOMObject_somPrintSelf
#define CosStream_StreamIO_somDumpSelf SOMObject_somDumpSelf
#define CosStream_StreamIO_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_CosStream_StreamIO_h */

#ifndef SOM_CosStream_Streamable_h
#define SOM_CosStream_Streamable_h


/*
 * The SOM_STRICT_IDL macro means that we can ignore stars
 * in our declarations of objects.
 */
#define SOM_STRICT_IDL 1


#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 CosStream_Streamable
#define CosStream_Streamable SOMObject
#endif
/*

 */

/*
 * Include Parent Bindings
 */
#ifndef SOM_CosObjectIdentity_IdentifiableObject_h
#ifdef SOMLOCALINCLUDES
#include "omgidobj.h"
#else
#include <omgidobj.h>
#endif
#endif

/*
 * Start of bindings for IDL types
 */


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

#define CosStream_Streamable_MajorVersion 3
#define CosStream_Streamable_MinorVersion 0

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOM_IMPORTEXPORT_somestrm_omgestio SOMClass  SOMLINK CosStream_StreamableNewClass(integer4 somtmajorVersion,
		integer4 somtminorVersion);

/*
 * Declare the ABI 2 ClassData structure
 */
SOMEXTERN struct CosStream_StreamableClassDataStructure {
	SOMClass classObject;
	somMToken externalize_to_stream;
	somMToken internalize_from_stream;
	somMToken _get_external_form_id;
} SOM_IMPORTEXPORT_somestrm_omgestio SOMDLINK CosStream_StreamableClassData;

/*
 * Declare the ABI 2 CClassData structure
 */
SOMEXTERN struct CosStream_StreamableCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
} SOM_IMPORTEXPORT_somestrm_omgestio SOMDLINK CosStream_StreamableCClassData;

/*
 * Class Object and Method Token Macros
 */
#define _SOMCLASS_CosStream_Streamable (CosStream_StreamableClassData.classObject)
#ifndef SOMGD_CosStream_Streamable
    #if (defined(_CosStream_Streamable) || defined(__CosStream_Streamable))
        #undef _CosStream_Streamable
        #undef __CosStream_Streamable
        #define SOMGD_CosStream_Streamable 1
    #else
        #define _CosStream_Streamable _SOMCLASS_CosStream_Streamable
    #endif /* _CosStream_Streamable */
#endif /* SOMGD_CosStream_Streamable */
#define CosStream_Streamable_classObj _SOMCLASS_CosStream_Streamable
#define _SOMMTOKEN_CosStream_Streamable(method) ((somMToken)CosStream_StreamableClassData.method)

/*
 * New and Renew macros for CosStream_Streamable
 */
#define CosStream_StreamableNew() \
   ( _CosStream_Streamable ? \
	_somNew(_CosStream_Streamable) \
	: ( CosStream_StreamableNewClass(\
		CosStream_Streamable_MajorVersion, \
		CosStream_Streamable_MinorVersion),\
	   _somNew(_CosStream_Streamable)))
#define CosStream_StreamableRenew(buf) \
   ( _CosStream_Streamable ? \
	_somRenew(_CosStream_Streamable, buf) \
	: ( CosStream_StreamableNewClass(\
		CosStream_Streamable_MajorVersion, \
		CosStream_Streamable_MinorVersion),\
	   _somRenew(_CosStream_Streamable, buf)))

/*
 * New Method: externalize_to_stream
 */
typedef void   SOMLINK somTP_CosStream_Streamable_externalize_to_stream(CosStream_Streamable somSelf, Environment *ev, 
		CosStream_StreamIO stream);
typedef somTP_CosStream_Streamable_externalize_to_stream *somTD_CosStream_Streamable_externalize_to_stream;
/*
 *  This method must be overridden.
 */
#define somMD_CosStream_Streamable_externalize_to_stream "::CosStream::Streamable::externalize_to_stream"
#define CosStream_Streamable_externalize_to_stream(somSelf,ev,stream) \
    (SOM_Resolve(somSelf, CosStream_Streamable, externalize_to_stream) \
	(somSelf,ev,stream))
#ifndef SOMGD_externalize_to_stream
    #if (defined(_externalize_to_stream) || defined(__externalize_to_stream))
        #undef _externalize_to_stream
        #undef __externalize_to_stream
        #define SOMGD_externalize_to_stream 1
    #else
        #define _externalize_to_stream CosStream_Streamable_externalize_to_stream
    #endif /* _externalize_to_stream */
#endif /* SOMGD_externalize_to_stream */

/*
 * New Method: internalize_from_stream
 */
typedef void   SOMLINK somTP_CosStream_Streamable_internalize_from_stream(CosStream_Streamable somSelf, Environment *ev, 
		CosStream_StreamIO stream, 
		CosLifeCycle_FactoryFinder ff);
typedef somTP_CosStream_Streamable_internalize_from_stream *somTD_CosStream_Streamable_internalize_from_stream;
/*
 *  This method must be overridden.
 *  D23362
 *     readonly attribute CosLifeCycle::Key external_form_id;
 *  The write_object method puts this attribute into the stream so that
 *  read_object can create a new object.
 */
#define somMD_CosStream_Streamable_internalize_from_stream "::CosStream::Streamable::internalize_from_stream"
#define CosStream_Streamable_internalize_from_stream(somSelf,ev,stream,ff) \
    (SOM_Resolve(somSelf, CosStream_Streamable, internalize_from_stream) \
	(somSelf,ev,stream,ff))
#ifndef SOMGD_internalize_from_stream
    #if (defined(_internalize_from_stream) || defined(__internalize_from_stream))
        #undef _internalize_from_stream
        #undef __internalize_from_stream
        #define SOMGD_internalize_from_stream 1
    #else
        #define _internalize_from_stream CosStream_Streamable_internalize_from_stream
    #endif /* _internalize_from_stream */
#endif /* SOMGD_internalize_from_stream */

/*
 * Full Names for Inherited Methods
 */
/* overridden methods */
#define CosStream_Streamable__get_constant_random_id CosObjectIdentity_IdentifiableObject__get_constant_random_id
#define CosStream_Streamable_is_identical CosObjectIdentity_IdentifiableObject_is_identical
#define CosStream_Streamable_somDefaultInit SOMObject_somDefaultInit
#define CosStream_Streamable_somDestruct SOMObject_somDestruct

#ifndef SOM_DONT_USE_INHERITED_MACROS
#define CosStream_Streamable_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define CosStream_Streamable_somDefaultAssign SOMObject_somDefaultAssign
#define CosStream_Streamable_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define CosStream_Streamable_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define CosStream_Streamable_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define CosStream_Streamable_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define CosStream_Streamable_somDefaultVAssign SOMObject_somDefaultVAssign
#define CosStream_Streamable_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define CosStream_Streamable_somInit SOMObject_somInit
#define CosStream_Streamable_somUninit SOMObject_somUninit
#define CosStream_Streamable_somFree SOMObject_somFree
#define CosStream_Streamable_somGetClass SOMObject_somGetClass
#define CosStream_Streamable_somGetClassName SOMObject_somGetClassName
#define CosStream_Streamable_somGetSize SOMObject_somGetSize
#define CosStream_Streamable_somIsA SOMObject_somIsA
#define CosStream_Streamable_somIsInstanceOf SOMObject_somIsInstanceOf
#define CosStream_Streamable_somRespondsTo SOMObject_somRespondsTo
#define CosStream_Streamable_somDispatch SOMObject_somDispatch
#define CosStream_Streamable_somClassDispatch SOMObject_somClassDispatch
#define CosStream_Streamable_somCastObj SOMObject_somCastObj
#define CosStream_Streamable_somResetObj SOMObject_somResetObj
#define CosStream_Streamable_somPrintSelf SOMObject_somPrintSelf
#define CosStream_Streamable_somDumpSelf SOMObject_somDumpSelf
#define CosStream_Streamable_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_CosStream_Streamable_h */

#ifndef SOM_CosStream_StreamableFactory_h
#define SOM_CosStream_StreamableFactory_h


/*
 * The SOM_STRICT_IDL macro means that we can ignore stars
 * in our declarations of objects.
 */
#define SOM_STRICT_IDL 1


#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 CosStream_StreamableFactory
#define CosStream_StreamableFactory SOMObject
#endif

/*
 * Include Parent Bindings
 */
#ifndef SOM_SOMObject_h
#ifdef SOMLOCALINCLUDES
#include "somobj.h"
#else
#include <somobj.h>
#endif
#endif

/*
 * Start of bindings for IDL types
 */


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

#define CosStream_StreamableFactory_MajorVersion 3
#define CosStream_StreamableFactory_MinorVersion 0

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOM_IMPORTEXPORT_somestrm_omgestio SOMClass  SOMLINK CosStream_StreamableFactoryNewClass(integer4 somtmajorVersion,
		integer4 somtminorVersion);

/*
 * Declare the ABI 2 ClassData structure
 */
SOMEXTERN struct CosStream_StreamableFactoryClassDataStructure {
	SOMClass classObject;
	somMToken create_uninitialized;
} SOM_IMPORTEXPORT_somestrm_omgestio SOMDLINK CosStream_StreamableFactoryClassData;

/*
 * Declare the ABI 2 CClassData structure
 */
SOMEXTERN struct CosStream_StreamableFactoryCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
} SOM_IMPORTEXPORT_somestrm_omgestio SOMDLINK CosStream_StreamableFactoryCClassData;

/*
 * Class Object and Method Token Macros
 */
#define _SOMCLASS_CosStream_StreamableFactory (CosStream_StreamableFactoryClassData.classObject)
#ifndef SOMGD_CosStream_StreamableFactory
    #if (defined(_CosStream_StreamableFactory) || defined(__CosStream_StreamableFactory))
        #undef _CosStream_StreamableFactory
        #undef __CosStream_StreamableFactory
        #define SOMGD_CosStream_StreamableFactory 1
    #else
        #define _CosStream_StreamableFactory _SOMCLASS_CosStream_StreamableFactory
    #endif /* _CosStream_StreamableFactory */
#endif /* SOMGD_CosStream_StreamableFactory */
#define CosStream_StreamableFactory_classObj _SOMCLASS_CosStream_StreamableFactory
#define _SOMMTOKEN_CosStream_StreamableFactory(method) ((somMToken)CosStream_StreamableFactoryClassData.method)

/*
 * New and Renew macros for CosStream_StreamableFactory
 */
#define CosStream_StreamableFactoryNew() \
   ( _CosStream_StreamableFactory ? \
	_somNew(_CosStream_StreamableFactory) \
	: ( CosStream_StreamableFactoryNewClass(\
		CosStream_StreamableFactory_MajorVersion, \
		CosStream_StreamableFactory_MinorVersion),\
	   _somNew(_CosStream_StreamableFactory)))
#define CosStream_StreamableFactoryRenew(buf) \
   ( _CosStream_StreamableFactory ? \
	_somRenew(_CosStream_StreamableFactory, buf) \
	: ( CosStream_StreamableFactoryNewClass(\
		CosStream_StreamableFactory_MajorVersion, \
		CosStream_StreamableFactory_MinorVersion),\
	   _somRenew(_CosStream_StreamableFactory, buf)))

/*
 * New Method: create_uninitialized
 */
typedef CosStream_Streamable   SOMLINK somTP_CosStream_StreamableFactory_create_uninitialized(CosStream_StreamableFactory somSelf, Environment *ev);
typedef somTP_CosStream_StreamableFactory_create_uninitialized *somTD_CosStream_StreamableFactory_create_uninitialized;
/*
 *   The OMG spec has method name "create_unitialized", which we assume
 *   is a typographical error.
 * 
 */
#define somMD_CosStream_StreamableFactory_create_uninitialized "::CosStream::StreamableFactory::create_uninitialized"
#define CosStream_StreamableFactory_create_uninitialized(somSelf,ev) \
    (SOM_Resolve(somSelf, CosStream_StreamableFactory, create_uninitialized) \
	(somSelf,ev))
#ifndef SOMGD_create_uninitialized
    #if (defined(_create_uninitialized) || defined(__create_uninitialized))
        #undef _create_uninitialized
        #undef __create_uninitialized
        #define SOMGD_create_uninitialized 1
    #else
        #define _create_uninitialized CosStream_StreamableFactory_create_uninitialized
    #endif /* _create_uninitialized */
#endif /* SOMGD_create_uninitialized */

/*
 * Full Names for Inherited Methods
 */
/* overridden methods */
#define CosStream_StreamableFactory_somDefaultInit SOMObject_somDefaultInit
#define CosStream_StreamableFactory_somDestruct SOMObject_somDestruct

#ifndef SOM_DONT_USE_INHERITED_MACROS
#define CosStream_StreamableFactory_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define CosStream_StreamableFactory_somDefaultAssign SOMObject_somDefaultAssign
#define CosStream_StreamableFactory_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define CosStream_StreamableFactory_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define CosStream_StreamableFactory_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define CosStream_StreamableFactory_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define CosStream_StreamableFactory_somDefaultVAssign SOMObject_somDefaultVAssign
#define CosStream_StreamableFactory_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define CosStream_StreamableFactory_somInit SOMObject_somInit
#define CosStream_StreamableFactory_somUninit SOMObject_somUninit
#define CosStream_StreamableFactory_somFree SOMObject_somFree
#define CosStream_StreamableFactory_somGetClass SOMObject_somGetClass
#define CosStream_StreamableFactory_somGetClassName SOMObject_somGetClassName
#define CosStream_StreamableFactory_somGetSize SOMObject_somGetSize
#define CosStream_StreamableFactory_somIsA SOMObject_somIsA
#define CosStream_StreamableFactory_somIsInstanceOf SOMObject_somIsInstanceOf
#define CosStream_StreamableFactory_somRespondsTo SOMObject_somRespondsTo
#define CosStream_StreamableFactory_somDispatch SOMObject_somDispatch
#define CosStream_StreamableFactory_somClassDispatch SOMObject_somClassDispatch
#define CosStream_StreamableFactory_somCastObj SOMObject_somCastObj
#define CosStream_StreamableFactory_somResetObj SOMObject_somResetObj
#define CosStream_StreamableFactory_somPrintSelf SOMObject_somPrintSelf
#define CosStream_StreamableFactory_somDumpSelf SOMObject_somDumpSelf
#define CosStream_StreamableFactory_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_CosStream_StreamableFactory_h */
