NEURON
bbs.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "bbsimpl.h"
4 
5 class IvocVect;
6 
7 class BBS {
8  public:
9  BBS();
10  BBS(int nhost);
11  virtual ~BBS();
12 
13  bool look(const char*);
14 
15  void take(const char*); /* blocks til something to take */
16  bool look_take(const char*); /* returns false if nothing to take */
17  // after taking use these
18  int upkint();
19  double upkdouble();
20  void upkvec(int n, double* px); // n input px space must exist
21  char* upkstr(); // delete [] char* when finished
22  std::vector<char> upkpickle();
23 
24  // before posting use these
25  void pkbegin();
26  void pkint(int);
27  void pkdouble(double);
28  void pkvec(int n, double* px); // doesn't pack n
29  void pkstr(const char*);
30  void pkpickle(const std::vector<char>&);
31  void post(const char*);
32 
33  int submit(int userid);
34  bool working(int& id, double& x, int& userid);
35  void master_works(int flag);
36  void context();
37 
38  bool is_master();
39  void worker(); // forever execute
40  void done(); // prints timing
41 
42  void perror(const char*);
43  double time();
44  double wait_time();
45  double integ_time();
46  double send_time();
47  void add_wait_time(double); // add interval since arg
48 
49  int nhost();
50  int myid();
51 
52  // netpar interface
53  void set_gid2node(int, int);
54  int gid_exists(int);
55  double threshold();
56  void cell();
57  void outputcell(int);
58  void spike_record(int, IvocVect*, IvocVect*);
60  void netpar_solve(double);
61  Object** gid2obj(int);
62  Object** gid2cell(int);
63  Object** gid_connect(int);
64  double netpar_mindelay(double maxdelay);
65  void netpar_spanning_statistics(int*, int*, int*, int*);
67  Object** pyret();
68 
69  protected:
70  void init(int);
71 
72  protected:
74 };
Definition: bbs.h:7
bool look_take(const char *)
Definition: bbs.cpp:430
int myid()
Definition: bbs.cpp:104
Object ** gid2cell(int)
Definition: netpar.cpp:1167
void spike_record(int, IvocVect *, IvocVect *)
Definition: netpar.cpp:1113
Object ** gid_connect(int)
Definition: netpar.cpp:1193
virtual ~BBS()
Definition: bbs.cpp:92
void master_works(int flag)
Definition: bbs.cpp:327
std::vector< char > upkpickle()
Definition: bbs.cpp:174
void set_gid2node(int, int)
Definition: netpar.cpp:947
double send_time()
Definition: bbs.cpp:130
int nhost()
Definition: bbs.cpp:100
void pkstr(const char *)
Definition: bbs.cpp:210
Object ** pyret()
Definition: ocbbs.cpp:367
void upkvec(int n, double *px)
Definition: bbs.cpp:159
void netpar_solve(double)
Definition: netpar.cpp:1251
void pkdouble(double)
Definition: bbs.cpp:196
void pkint(int)
Definition: bbs.cpp:189
void pkvec(int n, double *px)
Definition: bbs.cpp:203
void done()
Definition: bbs.cpp:458
double integ_time()
Definition: bbs.cpp:127
int upkint()
Definition: bbs.cpp:143
bool working(int &id, double &x, int &userid)
Definition: bbs.cpp:323
bool is_master()
Definition: bbs.cpp:96
Object ** gid2obj(int)
Definition: netpar.cpp:1163
void init(int)
Definition: bbs.cpp:74
void pkbegin()
Definition: bbs.cpp:182
IvocVect * netpar_max_histogram(IvocVect *)
Definition: netpar.cpp:1429
void perror(const char *)
Definition: bbs.cpp:137
int gid_exists(int)
Definition: netpar.cpp:1053
void post(const char *)
Definition: bbs.cpp:423
void worker()
Definition: bbs.cpp:392
double wait_time()
Definition: bbs.cpp:124
void add_wait_time(double)
Definition: bbs.cpp:133
bool look(const char *)
Definition: bbs.cpp:438
void cell()
Definition: netpar.cpp:1070
void netpar_spanning_statistics(int *, int *, int *, int *)
Definition: netpar.cpp:1419
int submit(int userid)
Definition: bbs.cpp:296
double time()
Definition: bbs.cpp:112
void pkpickle(const std::vector< char > &)
Definition: bbs.cpp:217
BBSImpl * impl_
Definition: bbs.h:73
void outputcell(int)
Definition: netpar.cpp:1104
char * upkstr()
Definition: bbs.cpp:166
void take(const char *)
Definition: bbs.cpp:446
double netpar_mindelay(double maxdelay)
Definition: netpar.cpp:1411
double threshold()
Definition: netpar.cpp:1057
BBS()
Definition: bbs.cpp:33
double upkdouble()
Definition: bbs.cpp:151
void context()
Definition: bbs.cpp:314
Definition: bbsimpl.h:5
int const size_t const size_t n
Definition: nrngsl.h:10
static double userid(void *v)
Definition: ocbbs.cpp:196
Definition: hocdec.h:173