hypre/babel/bHYPREClient-C/bHYPRE_StructStencil.h
2007-09-27 19:57:24 +00:00

653 lines
14 KiB
C

/*
* File: bHYPRE_StructStencil.h
* Symbol: bHYPRE.StructStencil-v1.0.0
* Symbol Type: class
* Babel Version: 1.0.4
* Description: Client-side glue code for bHYPRE.StructStencil
*
* WARNING: Automatically generated; changes will be lost
*
*/
#ifndef included_bHYPRE_StructStencil_h
#define included_bHYPRE_StructStencil_h
/**
* Symbol "bHYPRE.StructStencil" (version 1.0.0)
*
* Define a structured stencil for a structured problem
* description. More than one implementation is not envisioned,
* thus the decision has been made to make this a class rather than
* an interface.
*/
struct bHYPRE_StructStencil__object;
struct bHYPRE_StructStencil__array;
typedef struct bHYPRE_StructStencil__object* bHYPRE_StructStencil;
/*
* Includes for all header dependencies.
*/
#ifndef included_sidl_header_h
#include "sidl_header.h"
#endif
#ifndef included_sidl_BaseException_h
#include "sidl_BaseException.h"
#endif
#ifndef included_sidl_BaseInterface_h
#include "sidl_BaseInterface.h"
#endif
#ifndef included_sidl_ClassInfo_h
#include "sidl_ClassInfo.h"
#endif
#ifndef included_sidl_RuntimeException_h
#include "sidl_RuntimeException.h"
#endif
#ifndef included_sidl_SIDLException_h
#include "sidl_SIDLException.h"
#endif
#ifndef included_sidl_rmi_Call_h
#include "sidl_rmi_Call.h"
#endif
#ifndef included_sidl_rmi_Return_h
#include "sidl_rmi_Return.h"
#endif
#ifdef SIDL_C_HAS_INLINE
#ifndef included_bHYPRE_StructStencil_IOR_h
#include "bHYPRE_StructStencil_IOR.h"
#endif
#endif /* SIDL_C_HAS_INLINE */
#ifdef __cplusplus
extern "C" {
#endif
/**
* Constructor function for the class.
*/
struct bHYPRE_StructStencil__object*
bHYPRE_StructStencil__create(sidl_BaseInterface* _ex);
/**
* RMI constructor function for the class.
*/
bHYPRE_StructStencil
bHYPRE_StructStencil__createRemote(const char * url, sidl_BaseInterface *_ex);
/**
* Wraps up the private data struct pointer (struct bHYPRE\_StructStencil\_\_data) passed in rather than running the constructor.
*/
bHYPRE_StructStencil
bHYPRE_StructStencil__wrapObj(void * data, sidl_BaseInterface *_ex);
/**
* RMI connector function for the class.(addrefs)
*/
bHYPRE_StructStencil
bHYPRE_StructStencil__connect(const char *, sidl_BaseInterface *_ex);
/**
* This function is the preferred way to create a Struct Stencil.
* You provide the number of spatial dimensions and the number of
* stencil entries.
*/
bHYPRE_StructStencil
bHYPRE_StructStencil_Create(
/* in */ int32_t ndim,
/* in */ int32_t size,
/* out */ sidl_BaseInterface *_ex);
/**
* The Destroy function doesn't necessarily destroy anything.
* It is just another name for deleteRef. Thus it decrements the
* object's reference count. The Babel memory management system will
* destroy the object if the reference count goes to zero.
*/
SIDL_C_INLINE_DECL
void
bHYPRE_StructStencil_Destroy(
/* in */ bHYPRE_StructStencil self,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
(*self->d_epv->f_Destroy)(
self,
_ex);
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
/**
* Set the number of dimensions. DEPRECATED, use StructStencilCreate
*/
SIDL_C_INLINE_DECL
int32_t
bHYPRE_StructStencil_SetDimension(
/* in */ bHYPRE_StructStencil self,
/* in */ int32_t dim,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
int32_t _result;
_result = (*self->d_epv->f_SetDimension)(
self,
dim,
_ex);
return _result;
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
/**
* Set the number of stencil entries.
* DEPRECATED, use StructStencilCreate
*/
SIDL_C_INLINE_DECL
int32_t
bHYPRE_StructStencil_SetSize(
/* in */ bHYPRE_StructStencil self,
/* in */ int32_t size,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
int32_t _result;
_result = (*self->d_epv->f_SetSize)(
self,
size,
_ex);
return _result;
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
/**
* Set a stencil element. Specify the stencil index, and an array of
* offsets. "offset" is an array of length "dim", the number of spatial
* dimensions.
*/
SIDL_C_INLINE_DECL
int32_t
bHYPRE_StructStencil_SetElement(
/* in */ bHYPRE_StructStencil self,
/* in */ int32_t index,
/* in rarray[dim] */ int32_t* offset,
/* in */ int32_t dim,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
int32_t _result;
int32_t offset_lower[1], offset_upper[1], offset_stride[1];
struct sidl_int__array offset_real;
struct sidl_int__array*offset_tmp = &offset_real;
offset_upper[0] = dim-1;
sidl_int__array_init(offset, offset_tmp, 1, offset_lower, offset_upper,
offset_stride);
_result = (*self->d_epv->f_SetElement)(
self,
index,
offset_tmp,
_ex);
#ifdef SIDL_DEBUG_REFCOUNT
sidl__array_deleteRef((struct sidl__array*)offset_tmp);
#endif /* SIDL_DEBUG_REFCOUNT */
return _result;
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
SIDL_C_INLINE_DECL
void
bHYPRE_StructStencil_addRef(
/* in */ bHYPRE_StructStencil self,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
(*self->d_epv->f_addRef)(
self,
_ex);
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
SIDL_C_INLINE_DECL
void
bHYPRE_StructStencil_deleteRef(
/* in */ bHYPRE_StructStencil self,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
(*self->d_epv->f_deleteRef)(
self,
_ex);
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
SIDL_C_INLINE_DECL
sidl_bool
bHYPRE_StructStencil_isSame(
/* in */ bHYPRE_StructStencil self,
/* in */ sidl_BaseInterface iobj,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
sidl_bool _result;
_result = (*self->d_epv->f_isSame)(
self,
iobj,
_ex);
return _result;
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
SIDL_C_INLINE_DECL
sidl_bool
bHYPRE_StructStencil_isType(
/* in */ bHYPRE_StructStencil self,
/* in */ const char* name,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
sidl_bool _result;
_result = (*self->d_epv->f_isType)(
self,
name,
_ex);
return _result;
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
SIDL_C_INLINE_DECL
sidl_ClassInfo
bHYPRE_StructStencil_getClassInfo(
/* in */ bHYPRE_StructStencil self,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
sidl_ClassInfo _result;
_result = (*self->d_epv->f_getClassInfo)(
self,
_ex);
return _result;
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
/**
* Cast method for interface and class type conversions.
*/
struct bHYPRE_StructStencil__object*
bHYPRE_StructStencil__cast(
void* obj,
sidl_BaseInterface* _ex);
/**
* String cast method for interface and class type conversions.
*/
void*
bHYPRE_StructStencil__cast2(
void* obj,
const char* type,
sidl_BaseInterface *_ex);
/**
* Select and execute a method by name
*/
SIDL_C_INLINE_DECL
void
bHYPRE_StructStencil__exec(
/* in */ bHYPRE_StructStencil self,
/* in */ const char* methodName,
/* in */ sidl_rmi_Call inArgs,
/* in */ sidl_rmi_Return outArgs,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
(*self->d_epv->f__exec)(
self,
methodName,
inArgs,
outArgs,
_ex);
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
/**
* Get the URL of the Implementation of this object (for RMI)
*/
SIDL_C_INLINE_DECL
char*
bHYPRE_StructStencil__getURL(
/* in */ bHYPRE_StructStencil self,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
char* _result;
_result = (*self->d_epv->f__getURL)(
self,
_ex);
return _result;
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
/**
* On a remote object, addrefs the remote instance.
*/
SIDL_C_INLINE_DECL
void
bHYPRE_StructStencil__raddRef(
/* in */ bHYPRE_StructStencil self,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
(*self->d_epv->f__raddRef)(
self,
_ex);
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
/**
* TRUE if this object is remote, false if local
*/
SIDL_C_INLINE_DECL
sidl_bool
bHYPRE_StructStencil__isRemote(
/* in */ bHYPRE_StructStencil self,
/* out */ sidl_BaseInterface *_ex)
#ifdef SIDL_C_HAS_INLINE
{
sidl_bool _result;
_result = (*self->d_epv->f__isRemote)(
self,
_ex);
return _result;
}
#else
;
#endif /* SIDL_C_HAS_INLINE */
/**
* TRUE if this object is remote, false if local
*/
sidl_bool
bHYPRE_StructStencil__isLocal(
/* in */ bHYPRE_StructStencil self,
/* out */ sidl_BaseInterface *_ex);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_createCol(
int32_t dimen,
const int32_t lower[],
const int32_t upper[]);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_createRow(
int32_t dimen,
const int32_t lower[],
const int32_t upper[]);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_create1d(int32_t len);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_create1dInit(
int32_t len,
bHYPRE_StructStencil* data);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_create2dCol(int32_t m, int32_t n);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_create2dRow(int32_t m, int32_t n);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_borrow(
bHYPRE_StructStencil* firstElement,
int32_t dimen,
const int32_t lower[],
const int32_t upper[],
const int32_t stride[]);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_smartCopy(
struct bHYPRE_StructStencil__array *array);
void
bHYPRE_StructStencil__array_addRef(
struct bHYPRE_StructStencil__array* array);
void
bHYPRE_StructStencil__array_deleteRef(
struct bHYPRE_StructStencil__array* array);
bHYPRE_StructStencil
bHYPRE_StructStencil__array_get1(
const struct bHYPRE_StructStencil__array* array,
const int32_t i1);
bHYPRE_StructStencil
bHYPRE_StructStencil__array_get2(
const struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2);
bHYPRE_StructStencil
bHYPRE_StructStencil__array_get3(
const struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3);
bHYPRE_StructStencil
bHYPRE_StructStencil__array_get4(
const struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
const int32_t i4);
bHYPRE_StructStencil
bHYPRE_StructStencil__array_get5(
const struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
const int32_t i4,
const int32_t i5);
bHYPRE_StructStencil
bHYPRE_StructStencil__array_get6(
const struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
const int32_t i4,
const int32_t i5,
const int32_t i6);
bHYPRE_StructStencil
bHYPRE_StructStencil__array_get7(
const struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
const int32_t i4,
const int32_t i5,
const int32_t i6,
const int32_t i7);
bHYPRE_StructStencil
bHYPRE_StructStencil__array_get(
const struct bHYPRE_StructStencil__array* array,
const int32_t indices[]);
void
bHYPRE_StructStencil__array_set1(
struct bHYPRE_StructStencil__array* array,
const int32_t i1,
bHYPRE_StructStencil const value);
void
bHYPRE_StructStencil__array_set2(
struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
bHYPRE_StructStencil const value);
void
bHYPRE_StructStencil__array_set3(
struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
bHYPRE_StructStencil const value);
void
bHYPRE_StructStencil__array_set4(
struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
const int32_t i4,
bHYPRE_StructStencil const value);
void
bHYPRE_StructStencil__array_set5(
struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
const int32_t i4,
const int32_t i5,
bHYPRE_StructStencil const value);
void
bHYPRE_StructStencil__array_set6(
struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
const int32_t i4,
const int32_t i5,
const int32_t i6,
bHYPRE_StructStencil const value);
void
bHYPRE_StructStencil__array_set7(
struct bHYPRE_StructStencil__array* array,
const int32_t i1,
const int32_t i2,
const int32_t i3,
const int32_t i4,
const int32_t i5,
const int32_t i6,
const int32_t i7,
bHYPRE_StructStencil const value);
void
bHYPRE_StructStencil__array_set(
struct bHYPRE_StructStencil__array* array,
const int32_t indices[],
bHYPRE_StructStencil const value);
int32_t
bHYPRE_StructStencil__array_dimen(
const struct bHYPRE_StructStencil__array* array);
int32_t
bHYPRE_StructStencil__array_lower(
const struct bHYPRE_StructStencil__array* array,
const int32_t ind);
int32_t
bHYPRE_StructStencil__array_upper(
const struct bHYPRE_StructStencil__array* array,
const int32_t ind);
int32_t
bHYPRE_StructStencil__array_length(
const struct bHYPRE_StructStencil__array* array,
const int32_t ind);
int32_t
bHYPRE_StructStencil__array_stride(
const struct bHYPRE_StructStencil__array* array,
const int32_t ind);
int
bHYPRE_StructStencil__array_isColumnOrder(
const struct bHYPRE_StructStencil__array* array);
int
bHYPRE_StructStencil__array_isRowOrder(
const struct bHYPRE_StructStencil__array* array);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_slice(
struct bHYPRE_StructStencil__array* src,
int32_t dimen,
const int32_t numElem[],
const int32_t *srcStart,
const int32_t *srcStride,
const int32_t *newStart);
void
bHYPRE_StructStencil__array_copy(
const struct bHYPRE_StructStencil__array* src,
struct bHYPRE_StructStencil__array* dest);
struct bHYPRE_StructStencil__array*
bHYPRE_StructStencil__array_ensure(
struct bHYPRE_StructStencil__array* src,
int32_t dimen,
int ordering);
#pragma weak bHYPRE_StructStencil__connectI
#pragma weak bHYPRE_StructStencil__rmicast
/**
* Cast method for interface and class type conversions.
*/
struct bHYPRE_StructStencil__object*
bHYPRE_StructStencil__rmicast(
void* obj, struct sidl_BaseInterface__object **_ex);
/**
* RMI connector function for the class. (no addref)
*/
struct bHYPRE_StructStencil__object*
bHYPRE_StructStencil__connectI(const char * url, sidl_bool ar, struct
sidl_BaseInterface__object **_ex);
#ifdef __cplusplus
}
#endif
#endif