From aa47ff5653fdae42d47c2c6c091800dbcde03dbf Mon Sep 17 00:00:00 2001 From: steve Date: Thu, 24 Apr 2003 18:57:05 +0000 Subject: [PATCH] Add acc_fetch_fulltype function. --- acc_user.h | 13 ++++++++++--- libveriuser/a_fetch_type.c | 30 ++++++++++++++++++++++++++++-- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/acc_user.h b/acc_user.h index 096c315ce..995257c23 100644 --- a/acc_user.h +++ b/acc_user.h @@ -19,7 +19,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #ifdef HAVE_CVS_IDENT -#ident "$Id: acc_user.h,v 1.10 2003/04/20 02:48:39 steve Exp $" +#ident "$Id: acc_user.h,v 1.11 2003/04/24 18:57:05 steve Exp $" #endif /* @@ -57,7 +57,10 @@ typedef struct __vpiHandle *handle; #define accScope 21 #define accNet 25 #define accReg 30 -#define accParameter 220 +#define accStringParam 204 +#define accParameter 220 +#define accIntegerVar 281 +#define accIntVar 281 #define accScalar 300 #define accVector 302 #define accConstant 600 @@ -179,7 +182,8 @@ extern void acc_fetch_timescale_info(handle obj, p_timescale_info info); extern PLI_INT32 acc_fetch_size(handle obj); extern PLI_INT32 acc_fetch_type(handle obj); -extern char* acc_fetch_type_str(PLI_INT32 type); +extern PLI_INT32 acc_fetch_fulltype(handle obj); +extern char* acc_fetch_type_str(PLI_INT32 type); extern char* acc_fetch_value(handle obj, const char*fmt, s_acc_value*value); @@ -210,6 +214,9 @@ EXTERN_C_END /* * $Log: acc_user.h,v $ + * Revision 1.11 2003/04/24 18:57:05 steve + * Add acc_fetch_fulltype function. + * * Revision 1.10 2003/04/20 02:48:39 steve * Support value change callbacks. * diff --git a/libveriuser/a_fetch_type.c b/libveriuser/a_fetch_type.c index 6b73829a6..02271e8b0 100644 --- a/libveriuser/a_fetch_type.c +++ b/libveriuser/a_fetch_type.c @@ -17,7 +17,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #ifdef HAVE_CVS_IDENT -#ident "$Id: a_fetch_type.c,v 1.3 2003/04/12 18:57:14 steve Exp $" +#ident "$Id: a_fetch_type.c,v 1.4 2003/04/24 18:57:06 steve Exp $" #endif # include @@ -51,8 +51,11 @@ PLI_INT32 acc_fetch_type(handle obj) case vpiReg: return accReg; + case vpiIntegerVar: + return accIntegerVar; + default: - vpi_printf("XXXX acc_fetch_type(%d) returns what?\n", + vpi_printf("acc_fetch_type: vpiType %d is what accType?\n", vpi_get(vpiType, obj)); return 0; } @@ -60,8 +63,31 @@ PLI_INT32 acc_fetch_type(handle obj) return 0; } +PLI_INT32 acc_fetch_fulltype(handle obj) +{ + switch (vpi_get(vpiType, obj)) { + case vpiConstant: + /* see acc_fetch_type */ + if (vpi_get(vpiConstType, obj) == vpiStringConst) + return accStringParam; + else + return accConstant; + + case vpiIntegerVar: + return accIntegerVar; + + default: + vpi_printf("acc_fetch_fulltype: vpiType %d is what accType?\n", + vpi_get(vpiType, obj)); + return 0; + } +} + /* * $Log: a_fetch_type.c,v $ + * Revision 1.4 2003/04/24 18:57:06 steve + * Add acc_fetch_fulltype function. + * * Revision 1.3 2003/04/12 18:57:14 steve * More acc_ function stubs. *