NEURON
ndatclas.h
Go to the documentation of this file.
1 #ifndef nrn_dataclass_h
2 #define nrn_dataclass_h
3 
4 #include <InterViews/resource.h>
5 
6 class NrnPropertyImpl;
7 class SectionListImpl;
8 class NrnNodeImpl;
9 
10 class NrnProperty {
11 public:
12  NrnProperty(Prop*);
13  NrnProperty(const char*);
14  virtual ~NrnProperty();
15  const char* name() const;
16  int type() const;
17  bool is_point() const;
18  bool deleteable();
19 
20  Symbol* first_var();
21  bool more_var();
22  Symbol* next_var();
23  Symbol* find(const char* rangevar);
24  Symbol* var(int);
25  int prop_index(const Symbol*)const;
26  double* prop_pval(const Symbol*, int arrayindex=0)const;
27 
28  Prop* prop() const;
29  int var_type(Symbol*) const;
30  //vartype=0, 1, 2, 3 means all, PARAMETER, ASSIGNED, STATE
31  static bool assign(Prop* src, Prop* dest, int vartype=0);
32 private:
34 };
35 
36 class SectionList : public Resource {
37 public:
39  virtual ~SectionList();
40  Section* begin();
41  Section* next();
42  Object* nrn_object();
43 private:
45 };
46 
47 #if 0
48 class NrnSection {
49 public:
50  NrnSection(Section* sec);
51  virtual ~NrnSection();
52  void section(Section*);
53  Section* section();
54  Node* node(int index);
55  bool is_mechanism(int type);
56  double* var_pointer(Symbol*, int index=0, int inode=0);
57  double* var_pointer(const char*); // eg. ca_cadifus[2](.7)
58 private:
59  NrnNodeImpl* nni_;
60 };
61 #endif
62 
63 #endif
int var_type(Symbol *) const
Definition: ndatclas.cpp:153
Symbol * var(int)
Definition: ndatclas.cpp:149
int prop_index(const Symbol *) const
Definition: ndatclas.cpp:215
double * prop_pval(const Symbol *, int arrayindex=0) const
Definition: ndatclas.cpp:223
Item * next(Item *item)
Definition: list.cpp:95
bool deleteable()
Definition: ndatclas.cpp:107
inode
Definition: multicore.cpp:985
NrnProperty(Prop *)
Definition: ndatclas.cpp:65
Symbol * first_var()
Definition: ndatclas.cpp:127
Definition: model.h:57
static bool assign(Prop *src, Prop *dest, int vartype=0)
Definition: ndatclas.cpp:157
Definition: section.h:213
int type() const
Definition: ndatclas.cpp:119
Symbol * next_var()
Definition: ndatclas.cpp:140
Definition: hocdec.h:226
const char * name() const
Definition: ndatclas.cpp:111
bool more_var()
Definition: ndatclas.cpp:132
sec
Definition: solve.cpp:885
NrnPropertyImpl * npi_
Definition: ndatclas.h:33
SectionListImpl * sli_
Definition: ndatclas.h:44
static Node * node(Object *)
Definition: netcvode.cpp:318
Definition: section.h:132
#define begin
Definition: redef.h:32
Prop * prop() const
Definition: ndatclas.cpp:123
bool is_point() const
Definition: ndatclas.cpp:115
Symbol * find(const char *rangevar)
Definition: ndatclas.cpp:203
virtual ~NrnProperty()
Definition: ndatclas.cpp:103
short index
Definition: cabvars.h:11