17 #ifndef _COREMODMEMORY_H
18 #define _COREMODMEMORY_H
21 #define NB_IMAGES_BUFFER 500
23 #define NB_IMAGES_BUFFER_REALLOC 600
26 #define NB_VARIABLES_BUFFER 100
28 #define NB_VARIABLES_BUFFER_REALLOC 150
109 long create_image_ID(
const char *name,
long naxis, uint32_t *size, uint8_t atype,
int shared,
int nbkw);
129 long image_write_keyword_D(
const char *IDname,
const char *kname,
double value,
const char *comment);
130 long image_write_keyword_S(
const char *IDname,
const char *kname,
const char *value,
const char *comment);
180 long create_3Dimage_ID(
const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize);
184 long create_3DCimage_ID(
const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize);
216 long copy_image_ID(
const char *name,
const char *newname,
int shared);
269 int_fast8_t
mk_complex_from_reim(
const char *re_name,
const char *im_name,
const char *out_name,
int sharedmem);
271 int_fast8_t
mk_complex_from_amph(
const char *am_name,
const char *ph_name,
const char *out_name,
int sharedmem);
273 int_fast8_t
mk_reim_from_complex(
const char *in_name,
const char *re_name,
const char *im_name,
int sharedmem);
275 int_fast8_t
mk_amph_from_complex(
const char *in_name,
const char *am_name,
const char *ph_name,
int sharedmem);
277 int_fast8_t
mk_reim_from_amph(
const char *am_name,
const char *ph_name,
const char *re_out_name,
const char *im_out_name,
int sharedmem);
279 int_fast8_t
mk_amph_from_reim(
const char *re_name,
const char *im_name,
const char *am_out_name,
const char *ph_out_name,
int sharedmem);
296 int_fast8_t
check_2Dsize(
const char *ID_name, uint32_t xsize, uint32_t ysize);
298 int_fast8_t
check_3Dsize(
const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize);
318 int_fast8_t
rotate_cube(
const char *ID_name,
const char *ID_out_name,
int orientation);
381 long COREMOD_MEMORY_streamDiff(
const char *IDstream0_name,
const char *IDstream1_name,
const char *IDstreammask_name,
const char *IDstreamout_name,
long semtrig);
406 long COREMOD_MEMORY_image_streamupdateloop(
const char *IDinname,
const char *IDoutname,
long usperiod,
long NBcubes,
long period,
long offsetus,
const char *IDsync_name,
int semtrig,
int timingmode);
441 long COREMOD_MEMORY_PixMapDecode_U(
const char *inputstream_name, uint32_t xsizeim, uint32_t ysizeim,
const char* NBpix_fname,
const char* IDmap_name,
const char *IDout_name,
const char *IDout_pixslice_fname);
long COREMOD_MEMORY_cp2shm(const char *IDname, const char *IDshmname)
Definition: COREMOD_memory.c:2786
long COREMOD_MEMORY_image_set_cnt0(const char *IDname, int cnt0)
Definition: COREMOD_memory.c:4145
int_fast8_t check_3Dsize(const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:3910
long COREMOD_MEMORY_image_set_sempost_loop(const char *IDname, long index, long dtus)
Definition: COREMOD_memory.c:4254
long variable_ID(const char *name)
Definition: COREMOD_memory.c:1446
int_fast8_t list_image_ID_ofp(FILE *fo)
Definition: COREMOD_memory.c:3150
long create_1Dimage_ID(const char *ID_name, uint32_t xsize)
Definition: COREMOD_memory.c:2269
int_fast8_t clearall()
Definition: COREMOD_memory.c:1721
long image_write_keyword_L(const char *IDname, const char *kname, long value, const char *comment)
Definition: COREMOD_memory.c:1904
long COREMOD_MEMORY_image_streamupdateloop_semtrig(const char *IDinname, const char *IDoutname, long period, long offsetus, const char *IDsync_name, int semtrig, int timingmode)
takes a 3Dimage (circular buffer) and writes slices to a 2D image synchronized with an image semaphor...
Definition: COREMOD_memory.c:5010
long image_ID_noaccessupdate(const char *name)
Definition: COREMOD_memory.c:1415
long COREMOD_MEMORY_streamDiff(const char *IDstream0_name, const char *IDstream1_name, const char *IDstreammask_name, const char *IDstreamout_name, long semtrig)
Difference between two streams.
Definition: COREMOD_memory.c:4432
int_fast8_t memory_monitor(const char *termttyname)
Definition: COREMOD_memory.c:1308
int_fast8_t list_variable_ID_file(const char *fname)
Definition: COREMOD_memory.c:3404
long image_read_keyword_L(const char *IDname, const char *kname, long *val)
Definition: COREMOD_memory.c:2037
long image_ID(const char *name)
Definition: COREMOD_memory.c:1381
long create_image_ID(const char *name, long naxis, uint32_t *size, uint8_t atype, int shared, int nbkw)
Definition: COREMOD_memory.c:2200
long COREMOD_MEMORY_image_NETWORKreceive(int port, int mode, int RT_priority)
Definition: COREMOD_memory.c:5802
long create_3DCimage_ID(const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:2444
long image_write_keyword_D(const char *IDname, const char *kname, double value, const char *comment)
Definition: COREMOD_memory.c:1933
long interval
Definition: COREMOD_memory.h:41
long long filecnt
Definition: COREMOD_memory.h:40
long read_sharedmem_image(const char *name)
Definition: COREMOD_memory.c:2160
long COREMOD_MEMORY_check_3Dsize(const char *IDname, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:3979
int_fast8_t mk_reim_from_amph(const char *am_name, const char *ph_name, const char *re_out_name, const char *im_out_name, int sharedmem)
Definition: COREMOD_memory.c:3843
long next_avail_image_ID()
Definition: COREMOD_memory.c:1479
int_fast8_t mk_amph_from_reim(const char *re_name, const char *im_name, const char *am_out_name, const char *ph_out_name, int sharedmem)
Definition: COREMOD_memory.c:3852
long COREMOD_MEMORY_check_2Dsize(const char *IDname, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:3951
int_fast8_t delete_image_ID(const char *imname)
Definition: COREMOD_memory.c:1537
long create_3Dimage_ID(const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:2425
int_fast8_t init_COREMOD_memory()
Definition: COREMOD_memory.c:1037
long COREMOD_MEMORY_stream_halfimDiff(const char *IDstream_name, const char *IDstreamout_name, long semtrig)
Definition: COREMOD_memory.c:4506
long COREMOD_MEMORY_image_set_status(const char *IDname, int status)
Definition: COREMOD_memory.c:4135
int_fast8_t list_image_ID_ofp_simple(FILE *fo)
Definition: COREMOD_memory.c:3283
int_fast8_t mk_reim_from_complex(const char *in_name, const char *re_name, const char *im_name, int sharedmem)
Definition: COREMOD_memory.c:3650
long long compute_image_memory()
Definition: COREMOD_memory.c:1349
long COREMOD_MEMORY_image_set_sempost_excl_byID(long ID, long index)
Definition: COREMOD_memory.c:4240
long COREMOD_MEMORY_image_set_createsem(const char *IDname, long NBsem)
Definition: COREMOD_memory.c:4185
long create_2Dimage_ID(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:2303
void * waitforsemID(void *ID)
Definition: COREMOD_memory.c:4290
long COREMOD_MEMORY_image_set_sempost(const char *IDname, long index)
Definition: COREMOD_memory.c:4210
long create_variable_ID(const char *name, double value)
Definition: COREMOD_memory.c:2491
int_fast8_t COREMOD_MEMORY_logshim_set_logexit(const char *IDname, int setv)
Definition: COREMOD_memory.c:6585
long COREMOD_MEMORY_streamAve(const char *IDstream_name, int NBave, int mode, const char *IDout_name)
Averages frames in stream.
Definition: COREMOD_memory.c:4582
Definition: COREMOD_memory.h:36
int logexit
Definition: COREMOD_memory.h:42
long chname_image_ID(const char *ID_name, const char *new_name)
Definition: COREMOD_memory.c:2757
long COREMOD_MEMORY_streamDelay(const char *IDin_name, const char *IDout_name, long delayus, long dtus)
Definition: COREMOD_memory.c:5172
long compute_nb_image()
Definition: COREMOD_memory.c:1323
int_fast8_t mk_complex_from_reim(const char *re_name, const char *im_name, const char *out_name, int sharedmem)
Definition: COREMOD_memory.c:3437
int_fast8_t delete_variable_ID(const char *varname)
Definition: COREMOD_memory.c:1703
int_fast8_t list_image_ID()
Definition: COREMOD_memory.c:3308
long COREMOD_MEMORY_image_NETWORKtransmit(const char *IDname, const char *IPaddr, int port, int mode, int RT_priority)
Definition: COREMOD_memory.c:5480
long COREMOD_MEMORY_sharedMem_2Dim_log(const char *IDname, uint32_t zsize, const char *logdir, const char *IDlogdata_name)
long COREMOD_MEMORY_image_set_semflush_IDarray(long *IDarray, long NB_ID)
flush multiple semaphores
Definition: COREMOD_memory.c:4361
long create_3Dimage_ID_double(const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:2407
long create_2DCimage_ID_double(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:2367
long COREMOD_MEMORY_image_set_semwait(const char *IDname, long index)
Definition: COREMOD_memory.c:4272
long COREMOD_MEMORY_image_set_sempost_byID(long ID, long index)
Definition: COREMOD_memory.c:4228
int_fast8_t check_2Dsize(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:3890
long image_read_keyword_D(const char *IDname, const char *kname, double *val)
Definition: COREMOD_memory.c:2017
long create_2Dimage_ID_double(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:2333
long compute_variable_memory()
Definition: COREMOD_memory.c:1362
long COREMOD_MEMORY_PixMapDecode_U(const char *inputstream_name, uint32_t xsizeim, uint32_t ysizeim, const char *NBpix_fname, const char *IDmap_name, const char *IDout_name, const char *IDout_pixslice_fname)
Definition: COREMOD_memory.c:6162
long COREMOD_MEMORY_image_set_semflush(const char *IDname, long index)
set semaphore value to 0
Definition: COREMOD_memory.c:4387
long create_1DCimage_ID(const char *ID_name, uint32_t xsize)
Definition: COREMOD_memory.c:2287
long create_variable_long_ID(const char *name, long value)
Definition: COREMOD_memory.c:2526
long read_sharedmem_image_size(const char *name, const char *fname)
Definition: COREMOD_memory.c:2088
long COREMOD_MEMORY_SaveAll_snapshot(const char *dirname)
Definition: COREMOD_memory.c:5294
void close_list_image_ID_ncurses(void)
Definition: COREMOD_memory.c:3134
int_fast8_t init_list_image_ID_ncurses(const char *termttyname)
Definition: COREMOD_memory.c:2939
long COREMOD_MEMORY_image_set_semwait_OR_IDarray(long *IDarray, long NB_ID)
Wait for multiple images semaphores [OR], only works for sem0.
Definition: COREMOD_memory.c:4325
int_fast8_t delete_image_ID_prefix(const char *prefix)
Definition: COREMOD_memory.c:1685
int_fast8_t list_image_ID_file(const char *fname)
Definition: COREMOD_memory.c:3326
long next_avail_variable_ID()
Definition: COREMOD_memory.c:1513
int_fast8_t mk_complex_from_amph(const char *am_name, const char *ph_name, const char *out_name, int sharedmem)
Definition: COREMOD_memory.c:3527
long create_2DCimage_ID(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:2349
long image_list_keywords(const char *IDname)
Definition: COREMOD_memory.c:1994
int on
Definition: COREMOD_memory.h:38
long long cnt
Definition: COREMOD_memory.h:39
int_fast8_t rotate_cube(const char *ID_name, const char *ID_out_name, int orientation)
Definition: COREMOD_memory.c:4024
long create_variable_string_ID(const char *name, const char *value)
Definition: COREMOD_memory.c:2562
int_fast8_t COREMOD_MEMORY_logshim_set_on(const char *IDname, int setv)
Definition: COREMOD_memory.c:6541
long COREMOD_MEMORY_SaveAll_sequ(const char *dirname, const char *IDtrig_name, long semtrig, long NBframes)
Definition: COREMOD_memory.c:5358
long compute_nb_variable()
Definition: COREMOD_memory.c:1336
int_fast8_t COREMOD_MEMORY_logshim_printstatus(const char *IDname)
Definition: COREMOD_memory.c:6480
void * save_fits_function(void *ptr)
Definition: COREMOD_memory.c:1742
long COREMOD_MEMORY_image_set_cnt1(const char *IDname, int cnt1)
Definition: COREMOD_memory.c:4155
int_fast8_t list_variable_ID()
Definition: COREMOD_memory.c:3392
int_fast8_t list_image_ID_ncurses()
Definition: COREMOD_memory.c:2963
int_fast8_t mk_amph_from_complex(const char *in_name, const char *am_name, const char *ph_name, int sharedmem)
Definition: COREMOD_memory.c:3745
long COREMOD_MEMORY_image_streamupdateloop(const char *IDinname, const char *IDoutname, long usperiod, long NBcubes, long period, long offsetus, const char *IDsync_name, int semtrig, int timingmode)
takes a 3Dimage (circular buffer) and writes slices to a 2D image with time interval specified in us ...
Definition: COREMOD_memory.c:4740
long image_write_keyword_S(const char *IDname, const char *kname, const char *value, const char *comment)
Definition: COREMOD_memory.c:1962
long copy_image_ID(const char *name, const char *newname, int shared)
Definition: COREMOD_memory.c:2621