#ifndef macrolib_ibis_v_INCLUDED
#define macrolib_ibis_v_INCLUDED
#if defined(__GNUC__) && defined(unix)
#  pragma interface "macrolib_ibis_v.hpp"
#endif
#ifndef macrolib_ibis_v_export
#  if defined(_WIN32) && !defined(unix)
#    define macrolib_ibis_v_export __declspec(dllimport)
#  else
#    define macrolib_ibis_v_export
#  endif
#endif
#include "smash_enum.h"
#include "std_standard.hpp"
using namespace STD;
#include "ieee_electrical_systems.hpp"
using namespace IEEE;
namespace MACROLIB
{
class macrolib_ibis_v_export IBIS_V {
public:
const char *mInstanceName;
static STANDARD_REAL smG_VDC;
static unsigned smGF_VDC;
unsigned mGF_VDC : 1;
const STANDARD_REAL VDC;
static STANDARD_REAL smG_SCALE;
static unsigned smGF_SCALE;
unsigned mGF_SCALE : 1;
const STANDARD_REAL SCALE;
static ELECTRICAL_SYSTEMS_ELECTRICAL* smP_P;
static unsigned smPF_P;
static short smPT_P;
unsigned mPF_P : 4;
short mPT_P;
static const char *smAN_P;
ELECTRICAL_SYSTEMS_ELECTRICAL &P;
static double smExpression_P;
double mExpression_P;
VHDL_Dispatcher *P_dispatchers;
static ELECTRICAL_SYSTEMS_ELECTRICAL* smP_N;
static unsigned smPF_N;
static short smPT_N;
unsigned mPF_N : 4;
short mPT_N;
static const char *smAN_N;
ELECTRICAL_SYSTEMS_ELECTRICAL &N;
static double smExpression_N;
double mExpression_N;
VHDL_Dispatcher *N_dispatchers;
virtual short ElaborateConfiguration(const char *, long) = 0;
public:
IBIS_V();
virtual ~IBIS_V();
};
extern "C" macrolib_ibis_v_export const char *MACROLIB_IBIS_V_GetPortName(short);
extern "C" macrolib_ibis_v_export void MACROLIB_IBIS_V_InitStaticGenericPort(void);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_SetGeneric(const char *, const char *, const char *, const T_B3CIValue *);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_SetPort(short inLang, const char *, const char *, const char *, const char *, void *, long, double, short, short);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_InstantiateUnmappedPort(const char *);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_Elaborate(T_B3CIHandle *, const char *, long, short);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_Initialize(T_B3CIHandle, long, double *);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_Finalize(T_B3CIHandle);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_AmsLink(T_B3CIHandle, long, long **);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_AmsBim(T_B3CIHandle, long, TRANS_PARAM_BIM *, long **);
extern "C" macrolib_ibis_v_export short MACROLIB_IBIS_V_AmsConverge(T_B3CIHandle, long, long **, double *, unsigned char *, ANALYSISTYPE);
}
#endif /* macrolib_ibis_v_INCLUDED */
