1 #include <../../nrnconf.h> 22 #if HAVE_IV // to end of file 29 class GLineRecordList;
33 static GLineRecordList* grl;
39 int i,
cnt = grl->count();
40 for (i = 0; i <
cnt; ++
i) {
51 while (grl->count()) {
52 delete grl->item(grl->count()-1);
58 if (!grl) { grl =
new GLineRecordList(); }
59 cnt = line_list_.count();
60 for (i = 0; i <
cnt; ++
i) {
87 if (strcmp(sym->
name,
"t") == 0) {
95 pd_and_vec_.push_back(std::pair<double*, IvocVect*>(pd,
NULL));
101 Symbol* esym = gl_->expr_;
104 printf(
"\n%s\n", gl_->name());
105 for (
int i = 0; i < sz; ++
i) {
106 hoc_debugzz(inst + i);
116 for (GLineRecordEData::iterator it = pd_and_vec_.begin(); it != pd_and_vec_.end(); ++it) {
121 pd_and_vec_.resize(0);
138 printf(
"\n%s\n", gl_->name());
139 for (GLineRecordEData::iterator it = pd_and_vec_.begin(); it != pd_and_vec_.end(); ++it) {
140 printf(
" pd=%p\n", (*it).first);
176 for (GLineRecordEData::iterator it = pd_and_vec_.begin(); it != pd_and_vec_.end(); ++it) {
182 for (i = grl->count()-1; i >= 0; --
i) {
183 if (grl->item(i) ==
this) {
184 gl_->simgraph_activate(
false);
192 printf(
"~GVectorRecord %p\n",
this);
193 #if 0 // for now not allowing vector buffering 194 for (GLineRecordEData::iterator it = pd_and_vec_.begin(); it != pd_and_vec_.end(); ++it) {
203 gl_->simgraph_init();
210 gl_->simgraph_continuous(t);
217 return gv_->py_data()->count();
220 return gv_->py_data()->p(i);
224 double dt = tstop/double(vecsz-1);
230 for (
int i=0; i < vecsz; ++
i) {
234 }
else if (gl_->expr_) {
237 for (
int i=0; i < vecsz; ++
i) {
239 for (GLineRecordEData::iterator it = pd_and_vec_.begin(); it != pd_and_vec_.end(); ++it) {
240 double* pd = (*it).first;
241 *pd = (*it).second->elem(i);
250 #else // do not HAVE_IV
#define declarePtrList(PtrList, T)
virtual void record_init()
virtual void continuous(double t)
virtual void continuous(double t)
static void pr(N_Vector x)
virtual void record_init()
virtual bool uses(void *v)
#define implementPtrList(PtrList, T)
void rangevarevalpointer(void)
GVectorRecord(GraphVector *)
void simgraph_activate(bool)
double * vector_vec(Vect *v)
PlayRecord * playrec_uses(void *)
NetCvode * net_cvode_instance