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);
421 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);
456 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:2775
long COREMOD_MEMORY_image_set_cnt0(const char *IDname, int cnt0)
Definition: COREMOD_memory.c:4134
int_fast8_t check_3Dsize(const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:3899
long COREMOD_MEMORY_image_set_sempost_loop(const char *IDname, long index, long dtus)
Definition: COREMOD_memory.c:4291
long variable_ID(const char *name)
Definition: COREMOD_memory.c:1438
int_fast8_t list_image_ID_ofp(FILE *fo)
Definition: COREMOD_memory.c:3139
long create_1Dimage_ID(const char *ID_name, uint32_t xsize)
Definition: COREMOD_memory.c:2248
int_fast8_t clearall()
Definition: COREMOD_memory.c:1713
long image_write_keyword_L(const char *IDname, const char *kname, long value, const char *comment)
Definition: COREMOD_memory.c:1883
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:5085
long image_ID_noaccessupdate(const char *name)
Definition: COREMOD_memory.c:1407
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:4520
int_fast8_t memory_monitor(const char *termttyname)
Definition: COREMOD_memory.c:1300
int_fast8_t list_variable_ID_file(const char *fname)
Definition: COREMOD_memory.c:3393
long image_read_keyword_L(const char *IDname, const char *kname, long *val)
Definition: COREMOD_memory.c:2016
long image_ID(const char *name)
Definition: COREMOD_memory.c:1373
long create_image_ID(const char *name, long naxis, uint32_t *size, uint8_t atype, int shared, int nbkw)
Definition: COREMOD_memory.c:2179
long COREMOD_MEMORY_image_NETWORKreceive(int port, int mode, int RT_priority)
Definition: COREMOD_memory.c:5872
long create_3DCimage_ID(const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:2423
long image_write_keyword_D(const char *IDname, const char *kname, double value, const char *comment)
Definition: COREMOD_memory.c:1912
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:2139
long COREMOD_MEMORY_check_3Dsize(const char *IDname, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:3968
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:3832
long next_avail_image_ID()
Definition: COREMOD_memory.c:1471
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:3841
long COREMOD_MEMORY_check_2Dsize(const char *IDname, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:3940
int_fast8_t delete_image_ID(const char *imname)
Definition: COREMOD_memory.c:1529
long create_3Dimage_ID(const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:2404
int_fast8_t init_COREMOD_memory()
Definition: COREMOD_memory.c:1029
long COREMOD_MEMORY_stream_halfimDiff(const char *IDstream_name, const char *IDstreamout_name, long semtrig)
Definition: COREMOD_memory.c:4594
long COREMOD_MEMORY_image_set_status(const char *IDname, int status)
Definition: COREMOD_memory.c:4124
int_fast8_t list_image_ID_ofp_simple(FILE *fo)
Definition: COREMOD_memory.c:3272
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:3639
long long compute_image_memory()
Definition: COREMOD_memory.c:1341
long COREMOD_MEMORY_image_set_sempost_excl_byID(long ID, long index)
Definition: COREMOD_memory.c:4266
long COREMOD_MEMORY_image_set_createsem(const char *IDname, long NBsem)
Definition: COREMOD_memory.c:4172
long create_2Dimage_ID(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:2282
void * waitforsemID(void *ID)
Definition: COREMOD_memory.c:4354
long COREMOD_MEMORY_image_set_sempost(const char *IDname, long index)
Definition: COREMOD_memory.c:4194
long create_variable_ID(const char *name, double value)
Definition: COREMOD_memory.c:2470
int_fast8_t COREMOD_MEMORY_logshim_set_logexit(const char *IDname, int setv)
Definition: COREMOD_memory.c:6653
long COREMOD_MEMORY_streamAve(const char *IDstream_name, int NBave, int mode, const char *IDout_name)
Averages frames in stream.
Definition: COREMOD_memory.c:4670
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:2746
long COREMOD_MEMORY_streamDelay(const char *IDin_name, const char *IDout_name, long delayus, long dtus)
Definition: COREMOD_memory.c:5247
long compute_nb_image()
Definition: COREMOD_memory.c:1315
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:3426
int_fast8_t delete_variable_ID(const char *varname)
Definition: COREMOD_memory.c:1695
int_fast8_t list_image_ID()
Definition: COREMOD_memory.c:3297
long COREMOD_MEMORY_image_NETWORKtransmit(const char *IDname, const char *IPaddr, int port, int mode, int RT_priority)
Definition: COREMOD_memory.c:5555
long COREMOD_MEMORY_sharedMem_2Dim_log(const char *IDname, uint32_t zsize, const char *logdir, const char *IDlogdata_name)
Definition: COREMOD_memory.c:6705
long COREMOD_MEMORY_image_set_semflush_IDarray(long *IDarray, long NB_ID)
flush multiple semaphores
Definition: COREMOD_memory.c:4426
long create_3Dimage_ID_double(const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize)
Definition: COREMOD_memory.c:2386
long create_2DCimage_ID_double(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:2346
long COREMOD_MEMORY_image_set_semwait(const char *IDname, long index)
Definition: COREMOD_memory.c:4333
long COREMOD_MEMORY_image_set_sempost_byID(long ID, long index)
Definition: COREMOD_memory.c:4233
int_fast8_t check_2Dsize(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:3879
long image_read_keyword_D(const char *IDname, const char *kname, double *val)
Definition: COREMOD_memory.c:1996
long create_2Dimage_ID_double(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:2312
long compute_variable_memory()
Definition: COREMOD_memory.c:1354
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:6232
long COREMOD_MEMORY_image_set_semflush(const char *IDname, long index)
set semaphore value to 0
Definition: COREMOD_memory.c:4452
long create_1DCimage_ID(const char *ID_name, uint32_t xsize)
Definition: COREMOD_memory.c:2266
long create_variable_long_ID(const char *name, long value)
Definition: COREMOD_memory.c:2505
long read_sharedmem_image_size(const char *name, const char *fname)
Definition: COREMOD_memory.c:2067
long COREMOD_MEMORY_SaveAll_snapshot(const char *dirname)
Definition: COREMOD_memory.c:5369
void close_list_image_ID_ncurses(void)
Definition: COREMOD_memory.c:3123
int_fast8_t init_list_image_ID_ncurses(const char *termttyname)
Definition: COREMOD_memory.c:2928
long COREMOD_MEMORY_image_set_semwait_OR_IDarray(long *IDarray, long NB_ID)
Wait for multiple images semaphores [OR], only works for sem0 only.
Definition: COREMOD_memory.c:4390
int_fast8_t delete_image_ID_prefix(const char *prefix)
Definition: COREMOD_memory.c:1677
int_fast8_t list_image_ID_file(const char *fname)
Definition: COREMOD_memory.c:3315
long next_avail_variable_ID()
Definition: COREMOD_memory.c:1505
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:3516
long create_2DCimage_ID(const char *ID_name, uint32_t xsize, uint32_t ysize)
Definition: COREMOD_memory.c:2328
long image_list_keywords(const char *IDname)
Definition: COREMOD_memory.c:1973
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:4013
long create_variable_string_ID(const char *name, const char *value)
Definition: COREMOD_memory.c:2541
int_fast8_t COREMOD_MEMORY_logshim_set_on(const char *IDname, int setv)
Definition: COREMOD_memory.c:6609
long COREMOD_MEMORY_SaveAll_sequ(const char *dirname, const char *IDtrig_name, long semtrig, long NBframes)
Definition: COREMOD_memory.c:5433
long compute_nb_variable()
Definition: COREMOD_memory.c:1328
int_fast8_t COREMOD_MEMORY_logshim_printstatus(const char *IDname)
Definition: COREMOD_memory.c:6548
void * save_fits_function(void *ptr)
Definition: COREMOD_memory.c:1734
long COREMOD_MEMORY_image_set_cnt1(const char *IDname, int cnt1)
Definition: COREMOD_memory.c:4144
int_fast8_t list_variable_ID()
Definition: COREMOD_memory.c:3381
int_fast8_t list_image_ID_ncurses()
Definition: COREMOD_memory.c:2952
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:3734
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:4815
long image_write_keyword_S(const char *IDname, const char *kname, const char *value, const char *comment)
Definition: COREMOD_memory.c:1941
long copy_image_ID(const char *name, const char *newname, int shared)
Definition: COREMOD_memory.c:2600