mpispike.h
Go to the documentation of this file.00001 #ifndef nrnmpispike_h
00002 #define nrnmpispike_h
00003
00004 #ifndef nrn_spikebuf_size
00005 #define nrn_spikebuf_size 0
00006 #endif
00007
00008 typedef struct {
00009 int gid;
00010 double spiketime;
00011 } NRNMPI_Spike;
00012
00013 #if nrn_spikebuf_size > 0
00014 typedef struct {
00015 int nspike;
00016 int gid[nrn_spikebuf_size];
00017 double spiketime[nrn_spikebuf_size];
00018 } NRNMPI_Spikebuf;
00019 #endif
00020
00021 #if defined(__cplusplus)
00022 extern "C" {
00023 #endif
00024 int nrnmpi_spike_exchange();
00025 int nrnmpi_spike_exchange_compressed();
00026 double nrnmpi_mindelay(double m);
00027
00028 #define icapacity_ nrnmpi_i_capacity_
00029 #define spikeout_ nrnmpi_spikeout_
00030 #define spikein_ nrnmpi_spikein_
00031 #define nout_ nrnmpi_nout_
00032 #define nin_ nrnmpi_nin_
00033 extern int nout_;
00034 extern int* nin_;
00035 extern int icapacity_;
00036 extern NRNMPI_Spike* spikeout_;
00037 extern NRNMPI_Spike* spikein_;
00038
00039 #define spfixout_ nrnmpi_spikeout_fixed_
00040 #define spfixin_ nrnmpi_spikein_fixed_
00041 #define spfixin_ovfl_ nrnmpi_spikein_fixed_ovfl_
00042 #define localgid_size_ nrnmpi_localgid_size_
00043 #define ag_send_size_ nrnmpi_ag_send_size_
00044 #define ag_send_nspike_ nrnmpi_send_nspike_
00045 #define ovfl_capacity_ nrnmpi_ovfl_capacity_
00046 #define ovfl_ nrnmpi_ovfl_
00047 extern int localgid_size_;
00048 extern int ag_send_size_;
00049 extern int ag_send_nspike_;
00050 extern int ovfl_capacity_;
00051 extern int ovfl_;
00052 extern unsigned char* spfixout_;
00053 extern unsigned char* spfixin_;
00054 extern unsigned char* spfixin_ovfl_;
00055
00056 #if nrn_spikebuf_size > 0
00057 #define spbufout_ nrnmpi_spbufout_
00058 #define spbufin_ nrnmpi_spbufin_
00059 extern NRNMPI_Spikebuf* spbufout_;
00060 extern NRNMPI_Spikebuf* spbufin_;
00061 #endif
00062
00063 #if defined(__cplusplus)
00064 }
00065 #endif
00066
00067 #endif