/* * Copyright (c) 2002 Michael Ruff (mruff at chiaro.com) * Michael Runyan (mrunyan at chiaro.com) * * This source code is free software; you can redistribute it * and/or modify it in source code form under the terms of the GNU * General Public License as published by the Free Software * Foundation; either version 2 of the License, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ /* * This test verifies named events can be peeked and poked. */ #include #include #include #include "vpi_user.h" static s_vpi_time suppress_time = { vpiSuppressTime, 0, 0, 0 }; static vpiHandle findReg(const char *name_); static vpiHandle findMem(const char *name_); extern "C" PLI_INT32 CallbackPeek(s_cb_data * /*data*/) { vpiHandle handle; vpi_printf("!!!C++: callback\n"); // Find big_reg if((handle=findReg("big_reg"))) { unsigned size=vpi_get(vpiSize,handle); vpi_printf("!!!C++: %s size is %d\n",vpi_get_str(vpiName,handle),size); s_vpi_value value; value.format=vpiVectorVal; value.value.vector=NULL; vpi_get_value(handle,&value); for(unsigned i=0;(i*32)