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

#ifndef SOM_Module_biter_Biter_defined
#define SOM_Module_biter_Biter_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 */

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

#ifndef SOM_Biter_BINDITER_TWO_h
#define SOM_Biter_BINDITER_TWO_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_somnmf_biter
#ifdef SOM_DLL_somnmf
	/* export semantics */
	#if defined(SOM_DEFFILE_somnmf)\
	||(defined(SOM_DEFFILE_BY_DEFAULT)&&!defined(SOM_NODEFFILE_somnmf))\
	|| !defined(SOM_Module_biter_Source)
	#define SOM_IMPORTEXPORT_somnmf_biter
	#else
	#define SOM_IMPORTEXPORT_somnmf_biter SOMDLLEXPORT
	#endif
#else
	#define SOM_IMPORTEXPORT_somnmf_biter 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 Biter_BINDITER_TWO
#define Biter_BINDITER_TWO SOMObject
#endif

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

/*
 * Start of bindings for IDL types
 */


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

#define Biter_BINDITER_TWO_MajorVersion 3
#define Biter_BINDITER_TWO_MinorVersion 0

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

/*
 * Declare the ABI 2 ClassData structure
 */
SOMEXTERN struct Biter_BINDITER_TWOClassDataStructure {
	SOMClass classObject;
	somMToken BI_Init2;
	somMToken add_bindings;
} SOM_IMPORTEXPORT_somnmf_biter SOMDLINK Biter_BINDITER_TWOClassData;

/*
 * Declare the ABI 2 CClassData structure
 */
SOMEXTERN struct Biter_BINDITER_TWOCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
} SOM_IMPORTEXPORT_somnmf_biter SOMDLINK Biter_BINDITER_TWOCClassData;

/*
 * Class Object and Method Token Macros
 */
#define _SOMCLASS_Biter_BINDITER_TWO (Biter_BINDITER_TWOClassData.classObject)
#ifndef SOMGD_Biter_BINDITER_TWO
    #if (defined(_Biter_BINDITER_TWO) || defined(__Biter_BINDITER_TWO))
        #undef _Biter_BINDITER_TWO
        #undef __Biter_BINDITER_TWO
        #define SOMGD_Biter_BINDITER_TWO 1
    #else
        #define _Biter_BINDITER_TWO _SOMCLASS_Biter_BINDITER_TWO
    #endif /* _Biter_BINDITER_TWO */
#endif /* SOMGD_Biter_BINDITER_TWO */
#define Biter_BINDITER_TWO_classObj _SOMCLASS_Biter_BINDITER_TWO
#define _SOMMTOKEN_Biter_BINDITER_TWO(method) ((somMToken)Biter_BINDITER_TWOClassData.method)

/*
 * New and Renew macros for Biter_BINDITER_TWO
 */
#define Biter_BINDITER_TWONew() \
   ( _Biter_BINDITER_TWO ? \
	_somNew(_Biter_BINDITER_TWO) \
	: ( Biter_BINDITER_TWONewClass(\
		Biter_BINDITER_TWO_MajorVersion, \
		Biter_BINDITER_TWO_MinorVersion),\
	   _somNew(_Biter_BINDITER_TWO)))
#define Biter_BINDITER_TWORenew(buf) \
   ( _Biter_BINDITER_TWO ? \
	_somRenew(_Biter_BINDITER_TWO, buf) \
	: ( Biter_BINDITER_TWONewClass(\
		Biter_BINDITER_TWO_MajorVersion, \
		Biter_BINDITER_TWO_MinorVersion),\
	   _somRenew(_Biter_BINDITER_TWO, buf)))

/*
 * New Method: BI_Init2
 */
typedef void   SOMLINK somTP_Biter_BINDITER_TWO_BI_Init2(Biter_BINDITER_TWO somSelf, Environment *ev, 
		somInitCtrl* ctrl, 
		CosNaming_BindingList* bl);
typedef somTP_Biter_BINDITER_TWO_BI_Init2 *somTD_Biter_BINDITER_TWO_BI_Init2;
/*
 *  Constructor
 */
#define somMD_Biter_BINDITER_TWO_BI_Init2 "::Biter::BINDITER_TWO::BI_Init2"
#define Biter_BINDITER_TWO_BI_Init2(somSelf,ev,ctrl,bl) \
    (SOM_Resolve(somSelf, Biter_BINDITER_TWO, BI_Init2) \
	(somSelf,ev,ctrl,bl))
#ifndef SOMGD_BI_Init2
    #if (defined(_BI_Init2) || defined(__BI_Init2))
        #undef _BI_Init2
        #undef __BI_Init2
        #define SOMGD_BI_Init2 1
    #else
        #define _BI_Init2 Biter_BINDITER_TWO_BI_Init2
    #endif /* _BI_Init2 */
#endif /* SOMGD_BI_Init2 */

/*
 * New Method: add_bindings
 */
typedef void   SOMLINK somTP_Biter_BINDITER_TWO_add_bindings(Biter_BINDITER_TWO somSelf, Environment *ev, 
		CosNaming_BindingList* bl);
typedef somTP_Biter_BINDITER_TWO_add_bindings *somTD_Biter_BINDITER_TWO_add_bindings;
/*
 *  appends "bl" to the objects binding list. Callee
 *  owns memory
 */
#define somMD_Biter_BINDITER_TWO_add_bindings "::Biter::BINDITER_TWO::add_bindings"
#define Biter_BINDITER_TWO_add_bindings(somSelf,ev,bl) \
    (SOM_Resolve(somSelf, Biter_BINDITER_TWO, add_bindings) \
	(somSelf,ev,bl))
#ifndef SOMGD_add_bindings
    #if (defined(_add_bindings) || defined(__add_bindings))
        #undef _add_bindings
        #undef __add_bindings
        #define SOMGD_add_bindings 1
    #else
        #define _add_bindings Biter_BINDITER_TWO_add_bindings
    #endif /* _add_bindings */
#endif /* SOMGD_add_bindings */

/*
 * Full Names for Inherited Methods
 */
/* overridden methods */
#define Biter_BINDITER_TWO_next_one CosNaming_BindingIterator_next_one
#define Biter_BINDITER_TWO_next_n CosNaming_BindingIterator_next_n
#define Biter_BINDITER_TWO_destroy CosNaming_BindingIterator_destroy
#define Biter_BINDITER_TWO_somDefaultInit SOMObject_somDefaultInit

#ifndef SOM_DONT_USE_INHERITED_MACROS
#define Biter_BINDITER_TWO_somDestruct SOMObject_somDestruct
#define Biter_BINDITER_TWO_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define Biter_BINDITER_TWO_somDefaultAssign SOMObject_somDefaultAssign
#define Biter_BINDITER_TWO_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define Biter_BINDITER_TWO_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define Biter_BINDITER_TWO_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define Biter_BINDITER_TWO_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define Biter_BINDITER_TWO_somDefaultVAssign SOMObject_somDefaultVAssign
#define Biter_BINDITER_TWO_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define Biter_BINDITER_TWO_somInit SOMObject_somInit
#define Biter_BINDITER_TWO_somUninit SOMObject_somUninit
#define Biter_BINDITER_TWO_somFree SOMObject_somFree
#define Biter_BINDITER_TWO_somGetClass SOMObject_somGetClass
#define Biter_BINDITER_TWO_somGetClassName SOMObject_somGetClassName
#define Biter_BINDITER_TWO_somGetSize SOMObject_somGetSize
#define Biter_BINDITER_TWO_somIsA SOMObject_somIsA
#define Biter_BINDITER_TWO_somIsInstanceOf SOMObject_somIsInstanceOf
#define Biter_BINDITER_TWO_somRespondsTo SOMObject_somRespondsTo
#define Biter_BINDITER_TWO_somDispatch SOMObject_somDispatch
#define Biter_BINDITER_TWO_somClassDispatch SOMObject_somClassDispatch
#define Biter_BINDITER_TWO_somCastObj SOMObject_somCastObj
#define Biter_BINDITER_TWO_somResetObj SOMObject_somResetObj
#define Biter_BINDITER_TWO_somPrintSelf SOMObject_somPrintSelf
#define Biter_BINDITER_TWO_somDumpSelf SOMObject_somDumpSelf
#define Biter_BINDITER_TWO_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

/*
 * Constructors for Biter_BINDITER_TWO objects
 */
static Biter_BINDITER_TWO Biter_BINDITER_TWONew_BI_Init2(Environment *ev,CosNaming_BindingList* bl)
{
   Biter_BINDITER_TWO __somtmp_Biter_BINDITER_TWO;
   if (!_Biter_BINDITER_TWO) Biter_BINDITER_TWONewClass(Biter_BINDITER_TWO_MajorVersion, Biter_BINDITER_TWO_MinorVersion);
   __somtmp_Biter_BINDITER_TWO = SOMClass_somNewNoInit(_Biter_BINDITER_TWO);
   Biter_BINDITER_TWO_BI_Init2(__somtmp_Biter_BINDITER_TWO,ev,0,bl);
   return __somtmp_Biter_BINDITER_TWO;
}


#endif       /* SOM_Biter_BINDITER_TWO_h */

#ifndef SOM_Biter_BINDITER_ONE_h
#define SOM_Biter_BINDITER_ONE_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 Biter_BINDITER_ONE
#define Biter_BINDITER_ONE SOMObject
#endif

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

/*
 * Start of bindings for IDL types
 */

#ifndef _IDL_SEQUENCE_string_defined
#define _IDL_SEQUENCE_string_defined
typedef struct {
    unsigned long _maximum;
    unsigned long _length;
    string *_buffer;
} _IDL_SEQUENCE_string;
#endif /* _IDL_SEQUENCE_string_defined */ 
typedef
_IDL_SEQUENCE_string Biter_BINDITER_ONE_stringSeq;

#ifndef SOM_DONT_USE_SHORT_NAMES

#ifndef SOM_DONT_USE_SHORT_NAMES
#ifndef SOMTGD_stringSeq
    #ifdef stringSeq
        #undef stringSeq
        #define SOMTGD_stringSeq 1
    #else
        #define stringSeq Biter_BINDITER_ONE_stringSeq
    #endif /* stringSeq */
#endif /* SOMTGD_stringSeq */
#endif /* SOM_DONT_USE_SHORT_NAMES */
#endif /* SOM_DONT_USE_SHORT_NAMES */

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

#define Biter_BINDITER_ONE_MajorVersion 0
#define Biter_BINDITER_ONE_MinorVersion 0

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

/*
 * Declare the ABI 2 ClassData structure
 */
SOMEXTERN struct Biter_BINDITER_ONEClassDataStructure {
	SOMClass classObject;
	somMToken BI_Init1;
} SOM_IMPORTEXPORT_somnmf_biter SOMDLINK Biter_BINDITER_ONEClassData;

/*
 * Declare the ABI 2 CClassData structure
 */
SOMEXTERN struct Biter_BINDITER_ONECClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
} SOM_IMPORTEXPORT_somnmf_biter SOMDLINK Biter_BINDITER_ONECClassData;

/*
 * Class Object and Method Token Macros
 */
#define _SOMCLASS_Biter_BINDITER_ONE (Biter_BINDITER_ONEClassData.classObject)
#ifndef SOMGD_Biter_BINDITER_ONE
    #if (defined(_Biter_BINDITER_ONE) || defined(__Biter_BINDITER_ONE))
        #undef _Biter_BINDITER_ONE
        #undef __Biter_BINDITER_ONE
        #define SOMGD_Biter_BINDITER_ONE 1
    #else
        #define _Biter_BINDITER_ONE _SOMCLASS_Biter_BINDITER_ONE
    #endif /* _Biter_BINDITER_ONE */
#endif /* SOMGD_Biter_BINDITER_ONE */
#define Biter_BINDITER_ONE_classObj _SOMCLASS_Biter_BINDITER_ONE
#define _SOMMTOKEN_Biter_BINDITER_ONE(method) ((somMToken)Biter_BINDITER_ONEClassData.method)

/*
 * New and Renew macros for Biter_BINDITER_ONE
 */
#define Biter_BINDITER_ONENew() \
   ( _Biter_BINDITER_ONE ? \
	_somNew(_Biter_BINDITER_ONE) \
	: ( Biter_BINDITER_ONENewClass(\
		Biter_BINDITER_ONE_MajorVersion, \
		Biter_BINDITER_ONE_MinorVersion),\
	   _somNew(_Biter_BINDITER_ONE)))
#define Biter_BINDITER_ONERenew(buf) \
   ( _Biter_BINDITER_ONE ? \
	_somRenew(_Biter_BINDITER_ONE, buf) \
	: ( Biter_BINDITER_ONENewClass(\
		Biter_BINDITER_ONE_MajorVersion, \
		Biter_BINDITER_ONE_MinorVersion),\
	   _somRenew(_Biter_BINDITER_ONE, buf)))

/*
 * New Method: BI_Init1
 */
typedef void   SOMLINK somTP_Biter_BINDITER_ONE_BI_Init1(Biter_BINDITER_ONE somSelf, Environment *ev, 
		somInitCtrl* ctrl, 
		Biter_BINDITER_ONE_stringSeq* key, 
		string databaseFile);
typedef somTP_Biter_BINDITER_ONE_BI_Init1 *somTD_Biter_BINDITER_ONE_BI_Init1;
/*
 *  Constructor
 */
#define somMD_Biter_BINDITER_ONE_BI_Init1 "::Biter::BINDITER_ONE::BI_Init1"
#define Biter_BINDITER_ONE_BI_Init1(somSelf,ev,ctrl,key,databaseFile) \
    (SOM_Resolve(somSelf, Biter_BINDITER_ONE, BI_Init1) \
	(somSelf,ev,ctrl,key,databaseFile))
#ifndef SOMGD_BI_Init1
    #if (defined(_BI_Init1) || defined(__BI_Init1))
        #undef _BI_Init1
        #undef __BI_Init1
        #define SOMGD_BI_Init1 1
    #else
        #define _BI_Init1 Biter_BINDITER_ONE_BI_Init1
    #endif /* _BI_Init1 */
#endif /* SOMGD_BI_Init1 */

/*
 * Full Names for Inherited Methods
 */
/* overridden methods */
#define Biter_BINDITER_ONE_next_one CosNaming_BindingIterator_next_one
#define Biter_BINDITER_ONE_next_n CosNaming_BindingIterator_next_n
#define Biter_BINDITER_ONE_destroy CosNaming_BindingIterator_destroy
#define Biter_BINDITER_ONE_somDefaultInit SOMObject_somDefaultInit

#ifndef SOM_DONT_USE_INHERITED_MACROS
#define Biter_BINDITER_ONE_somDestruct SOMObject_somDestruct
#define Biter_BINDITER_ONE_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define Biter_BINDITER_ONE_somDefaultAssign SOMObject_somDefaultAssign
#define Biter_BINDITER_ONE_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define Biter_BINDITER_ONE_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define Biter_BINDITER_ONE_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define Biter_BINDITER_ONE_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define Biter_BINDITER_ONE_somDefaultVAssign SOMObject_somDefaultVAssign
#define Biter_BINDITER_ONE_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define Biter_BINDITER_ONE_somInit SOMObject_somInit
#define Biter_BINDITER_ONE_somUninit SOMObject_somUninit
#define Biter_BINDITER_ONE_somFree SOMObject_somFree
#define Biter_BINDITER_ONE_somGetClass SOMObject_somGetClass
#define Biter_BINDITER_ONE_somGetClassName SOMObject_somGetClassName
#define Biter_BINDITER_ONE_somGetSize SOMObject_somGetSize
#define Biter_BINDITER_ONE_somIsA SOMObject_somIsA
#define Biter_BINDITER_ONE_somIsInstanceOf SOMObject_somIsInstanceOf
#define Biter_BINDITER_ONE_somRespondsTo SOMObject_somRespondsTo
#define Biter_BINDITER_ONE_somDispatch SOMObject_somDispatch
#define Biter_BINDITER_ONE_somClassDispatch SOMObject_somClassDispatch
#define Biter_BINDITER_ONE_somCastObj SOMObject_somCastObj
#define Biter_BINDITER_ONE_somResetObj SOMObject_somResetObj
#define Biter_BINDITER_ONE_somPrintSelf SOMObject_somPrintSelf
#define Biter_BINDITER_ONE_somDumpSelf SOMObject_somDumpSelf
#define Biter_BINDITER_ONE_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

/*
 * Constructors for Biter_BINDITER_ONE objects
 */
static Biter_BINDITER_ONE Biter_BINDITER_ONENew_BI_Init1(Environment *ev,Biter_BINDITER_ONE_stringSeq* key,string databaseFile)
{
   Biter_BINDITER_ONE __somtmp_Biter_BINDITER_ONE;
   if (!_Biter_BINDITER_ONE) Biter_BINDITER_ONENewClass(Biter_BINDITER_ONE_MajorVersion, Biter_BINDITER_ONE_MinorVersion);
   __somtmp_Biter_BINDITER_ONE = SOMClass_somNewNoInit(_Biter_BINDITER_ONE);
   Biter_BINDITER_ONE_BI_Init1(__somtmp_Biter_BINDITER_ONE,ev,0,key,databaseFile);
   return __somtmp_Biter_BINDITER_ONE;
}


#endif       /* SOM_Biter_BINDITER_ONE_h */
