NEURON
nrncore_io.h File Reference
#include "hocdec.h"
#include <string>
#include <vector>

Go to the source code of this file.

Macros

#define writeint(p, size)   writeint_(p, size, f)
 
#define writedbl(p, size)   writedbl_(p, size, f)
 

Typedefs

using bbcore_write_t = void(*)(double *, int *, int *, int *, Memb_list *, std::size_t, Datum *, Datum *, double *, NrnThread *)
 

Functions

void create_dir_path (const std::string &path)
 create directory with given path More...
 
std::string get_write_path ()
 
std::string get_filename (const std::string &path, std::string file_name)
 
template<typename T >
T * begin_ptr (std::vector< T > &v)
 
void write_memb_mech_types (const char *fname)
 
void write_globals (const char *fname)
 
void write_nrnthread (const char *fname, NrnThread &nt, CellGroup &cg)
 
void writeint_ (int *p, size_t size, FILE *f)
 
void writedbl_ (double *p, size_t size, FILE *f)
 
void write_uint32vec (std::vector< uint32_t > &vec, FILE *f)
 
void write_nrnthread_task (const char *, CellGroup *cgs, bool append)
 Write all dataset ids to files.dat. More...
 
void nrnbbcore_vecplay_write (FILE *f, NrnThread &nt)
 
void nrn_write_mapping_info (const char *path, int gid, NrnMappingInfo &minfo)
 dump mapping information to gid_3.dat file More...
 

Variables

const char * bbcore_write_version
 
int chkpnt
 

Macro Definition Documentation

◆ writedbl

#define writedbl (   p,
  size 
)    writedbl_(p, size, f)

Definition at line 36 of file nrncore_io.h.

◆ writeint

#define writeint (   p,
  size 
)    writeint_(p, size, f)

Definition at line 35 of file nrncore_io.h.

Typedef Documentation

◆ bbcore_write_t

using bbcore_write_t = void (*)(double*, int*, int*, int*, Memb_list*, std::size_t, Datum*, Datum*, double*, NrnThread*)

Definition at line 39 of file nrncore_io.h.

Function Documentation

◆ begin_ptr()

template<typename T >
T* begin_ptr ( std::vector< T > &  v)
inline

Definition at line 17 of file nrncore_io.h.

◆ create_dir_path()

void create_dir_path ( const std::string &  path)

create directory with given path

Definition at line 28 of file nrncore_io.cpp.

◆ get_filename()

std::string get_filename ( const std::string &  path,
std::string  file_name 
)

Definition at line 51 of file nrncore_io.cpp.

◆ get_write_path()

std::string get_write_path ( )

Definition at line 43 of file nrncore_io.cpp.

◆ nrn_write_mapping_info()

void nrn_write_mapping_info ( const char *  path,
int  gid,
NrnMappingInfo minfo 
)

dump mapping information to gid_3.dat file

full path of mapping file

number of gids in NrnThread

all cells mapping information in NrnThread

gid, #section, #compartments, #sectionlists

section list name, number of sections, number of segments

section - segment mapping

Definition at line 531 of file nrncore_io.cpp.

◆ nrnbbcore_vecplay_write()

void nrnbbcore_vecplay_write ( FILE *  f,
NrnThread nt 
)

Definition at line 319 of file nrncore_io.cpp.

◆ write_globals()

void write_globals ( const char *  fname)

Definition at line 74 of file nrncore_io.cpp.

◆ write_memb_mech_types()

void write_memb_mech_types ( const char *  fname)

Definition at line 58 of file nrncore_io.cpp.

◆ write_nrnthread()

void write_nrnthread ( const char *  fname,
NrnThread nt,
CellGroup cg 
)

Definition at line 116 of file nrncore_io.cpp.

◆ write_nrnthread_task()

void write_nrnthread_task ( const char *  path,
CellGroup cgs,
bool  append 
)

Write all dataset ids to files.dat.

Format of the files.dat file is:

version string
-1 (if model uses gap junction)
n (number of datasets) in format %10d
id1
id2
...
idN

Writing the file with task, correspondent number of threads and list of correspondent first gids

Definition at line 366 of file nrncore_io.cpp.

◆ write_uint32vec()

void write_uint32vec ( std::vector< uint32_t > &  vec,
FILE *  f 
)

Definition at line 310 of file nrncore_io.cpp.

◆ writedbl_()

void writedbl_ ( double *  p,
size_t  size,
FILE *  f 
)

Definition at line 304 of file nrncore_io.cpp.

◆ writeint_()

void writeint_ ( int *  p,
size_t  size,
FILE *  f 
)

Definition at line 298 of file nrncore_io.cpp.

Variable Documentation

◆ bbcore_write_version

const char* bbcore_write_version
extern

Definition at line 25 of file nrncore_io.cpp.

◆ chkpnt

int chkpnt
extern

Definition at line 24 of file nrncore_io.cpp.