/*
 * This file was automatically generated with ILU (version 2.0beta1) tools
 * at Tue Sep 21 10:58:28 1999 by `nobody'
 * running "c:/iluwin/bin/c-stubber.exe" of Tue Sep 21 10:50:33 1999
 * on "C:/iluwin/examples/ngtest/NgStream.isl" of Mon Sep 20 15:54:12 1999,
 * and "ngbasic.isl" of Mon Sep 20 15:54:11 1999,
 * and "c:/iluwin/interfaces/ilu.isl" of Mon Sep 20 15:51:47 1999.
 *
 * ILU is Copyright 1991-1999 Xerox Corporation, All Rights Reserved.
 * ILU information:  ftp://ftp.parc.xerox.com/pub/ilu/ilu.html.
 */

#include "NgStream.h"

void _NgStream_DataSink_RegisterSourceControl__clientstub (NgStream_DataSink _handle, NgStream_DataSource thesource, ILU_C_ENVIRONMENT *_status)
{
  _ILU_C_ParmDesc __parmsBlock[1];
  __parmsBlock[0].parm_in  = 1;
  __parmsBlock[0].parm_out = 0;
  __parmsBlock[0].parm_needs_assignment   = 0;
  __parmsBlock[0].parm_needs_dereference  = 0;
  __parmsBlock[0].parm_type = TC_NgStream_DataSource;
  __parmsBlock[0].parm_val  = (void *) thesource;
  _ILU_C_VectorCall (_NgStream_DataSink__ILUType, &_NgStream_DataSink__ILUType->cl_methods[0],
                     ILU_NIL, _handle, _status, 1, __parmsBlock);
  return;
}

void _NgStream_DataSink_Done__clientstub (NgStream_DataSink _handle, ILU_C_ENVIRONMENT *_status)
{
  _ILU_C_VectorCall (_NgStream_DataSink__ILUType, &_NgStream_DataSink__ILUType->cl_methods[1],
                     ILU_NIL, _handle, _status, 0, ILU_NIL);
  return;
}

static ILU_C_Class _NgStream_DataSink__SurrogateClass = 0;
NgStream_DataSink NgStream_DataSink__CreateFromSBH (char *sbh, ILU_C_ENVIRONMENT * env)
{
  return (NgStream_DataSink) (ILU_C_SBHToObject(sbh, _NgStream_DataSink__ILUType, env));
}

void _NgStream_DataSource_Abort__clientstub (NgStream_DataSource _handle, ILU_C_ENVIRONMENT *_status)
{
  _ILU_C_VectorCall (_NgStream_DataSource__ILUType, &_NgStream_DataSource__ILUType->cl_methods[0],
                     ILU_NIL, _handle, _status, 0, ILU_NIL);
  return;
}

void _NgStream_DataSource_Pause__clientstub (NgStream_DataSource _handle, ILU_C_ENVIRONMENT *_status)
{
  _ILU_C_VectorCall (_NgStream_DataSource__ILUType, &_NgStream_DataSource__ILUType->cl_methods[1],
                     ILU_NIL, _handle, _status, 0, ILU_NIL);
  return;
}

void _NgStream_DataSource_Resume__clientstub (NgStream_DataSource _handle, ILU_C_ENVIRONMENT *_status)
{
  _ILU_C_VectorCall (_NgStream_DataSource__ILUType, &_NgStream_DataSource__ILUType->cl_methods[2],
                     ILU_NIL, _handle, _status, 0, ILU_NIL);
  return;
}

void _NgStream_DataSource_Resend__clientstub (NgStream_DataSource _handle, NgBasic_UnsignedInclusiveInterval* repeatRange, ILU_C_ENVIRONMENT *_status)
{
  _ILU_C_ParmDesc __parmsBlock[1];
  __parmsBlock[0].parm_in  = 1;
  __parmsBlock[0].parm_out = 0;
  __parmsBlock[0].parm_needs_assignment   = 0;
  __parmsBlock[0].parm_needs_dereference  = 0;
  __parmsBlock[0].parm_type = TC_NgBasic_UnsignedInclusiveInterval;
  __parmsBlock[0].parm_val  = (void *) repeatRange;
  _ILU_C_VectorCall (_NgStream_DataSource__ILUType, &_NgStream_DataSource__ILUType->cl_methods[3],
                     ILU_NIL, _handle, _status, 1, __parmsBlock);
  return;
}

void _NgStream_DataSource_SuggestChunkSize__clientstub (NgStream_DataSource _handle, CORBA_unsigned_long suggestedSize, ILU_C_ENVIRONMENT *_status)
{
  _ILU_C_ParmDesc __parmsBlock[1];
  __parmsBlock[0].parm_in  = 1;
  __parmsBlock[0].parm_out = 0;
  __parmsBlock[0].parm_needs_assignment   = 0;
  __parmsBlock[0].parm_needs_dereference  = 0;
  __parmsBlock[0].parm_type = TC_CORBA_unsigned_long;
  __parmsBlock[0].parm_val  = (void *) &suggestedSize;
  _ILU_C_VectorCall (_NgStream_DataSource__ILUType, &_NgStream_DataSource__ILUType->cl_methods[4],
                     ILU_NIL, _handle, _status, 1, __parmsBlock);
  return;
}

static ILU_C_Class _NgStream_DataSource__SurrogateClass = 0;
NgStream_DataSource NgStream_DataSource__CreateFromSBH (char *sbh, ILU_C_ENVIRONMENT * env)
{
  return (NgStream_DataSource) (ILU_C_SBHToObject(sbh, _NgStream_DataSource__ILUType, env));
}

void NgStream__Initialize(void)
{
  extern void _NgStream__GeneralInitialization(void);

  static ilu_boolean initialized = ilu_FALSE;
  if (initialized) return;
  initialized = ilu_TRUE;

  NgBasic__Initialize();
  _NgStream__GeneralInitialization();
  _NgStream_DataSink__SurrogateClass = NgStream_DataSink__MakeClass(
    _NgStream_DataSink_RegisterSourceControl__clientstub,
    _NgStream_DataSink_Done__clientstub,
    _NgBasic_NgObject_GetInterfaceDefinitionSource__clientstub,
    0 /* no finalization */
    );
  _ILU_C_RegisterSurrogateCType (_NgStream_DataSink__ILUType,
	_NgStream_DataSink__SurrogateClass);
  _NgStream_DataSource__SurrogateClass = NgStream_DataSource__MakeClass(
    _NgStream_DataSource_Abort__clientstub,
    _NgStream_DataSource_Pause__clientstub,
    _NgStream_DataSource_Resume__clientstub,
    _NgStream_DataSource_Resend__clientstub,
    _NgStream_DataSource_SuggestChunkSize__clientstub,
    _NgBasic_NgObject_GetInterfaceDefinitionSource__clientstub,
    0 /* no finalization */
    );
  _ILU_C_RegisterSurrogateCType (_NgStream_DataSource__ILUType,
	_NgStream_DataSource__SurrogateClass);
  return;
}
