bbs.h

Go to the documentation of this file.
00001 #ifndef bbs_h
00002 #define bbs_h
00003 
00004 #include "bbsimpl.h"
00005 
00006 class IvocVect;
00007 
00008 class BBS {
00009 public:
00010    BBS();
00011    BBS(int nhost);
00012    virtual ~BBS();
00013 
00014    boolean look(const char*);
00015 
00016    void take(const char*); /* blocks til something to take */
00017    boolean look_take(const char*); /* returns false if nothing to take */
00018    // after taking use these
00019    int upkint();
00020    double upkdouble();
00021    void upkvec(int n, double* px); // n input px space must exist
00022    char* upkstr(); // delete [] char* when finished
00023    char* upkpickle(size_t* size); // delete [] char* when finished
00024 
00025    // before posting use these
00026    void pkbegin();
00027    void pkint(int);
00028    void pkdouble(double);
00029    void pkvec(int n, double* px); // doesn't pack n
00030    void pkstr(const char*);
00031    void pkpickle(const char*, size_t size);
00032    void post(const char*);
00033 
00034    int submit(int userid);
00035    boolean working(int &id, double& x, int& userid);
00036    void context();
00037 
00038    boolean is_master();
00039    void worker(); // forever execute
00040    void done(); // prints timing
00041 
00042    void perror(const char*);
00043    double time();
00044    double wait_time();
00045    double integ_time();
00046    double send_time();
00047    void add_wait_time(double); // add interval since arg
00048 
00049    int nhost();
00050    int myid();
00051 
00052    // netpar interface
00053    void set_gid2node(int, int);
00054    int gid_exists(int);
00055    double threshold();
00056    void cell();
00057    void outputcell(int);
00058    void spike_record(int, IvocVect*, IvocVect*);
00059    void netpar_solve(double);
00060    Object** gid2obj(int);
00061    Object** gid2cell(int);
00062    Object** gid_connect(int);
00063    double netpar_mindelay(double maxdelay);
00064    void netpar_spanning_statistics(int*, int*, int*, int*);
00065    IvocVect* netpar_max_histogram(IvocVect*);
00066    Object** pyret();
00067 protected:
00068    void init(int);
00069 protected:
00070    BBSImpl* impl_;
00071 };
00072 
00073 #endif
Generated on Mon Jun 13 08:10:27 2011 for NEURON by  doxygen 1.6.3