cfitsTK
|
Function prototypes for cfitsTK memory functions. More...
Go to the source code of this file.
Data Structures | |
struct | LOGSHIM_CONF |
struct | TCP_BUFFER_METADATA |
Functions | |
int_fast8_t | init_COREMOD_memory () |
1. MANAGE MEMORY AND IDENTIFIERS | |
int_fast8_t | memory_monitor (const char *termttyname) |
long | compute_nb_image () |
long | compute_nb_variable () |
long long | compute_image_memory () |
long | compute_variable_memory () |
long | image_ID (const char *name) |
long | image_ID_noaccessupdate (const char *name) |
long | variable_ID (const char *name) |
long | next_avail_image_ID () |
long | next_avail_variable_ID () |
int_fast8_t | delete_image_ID (const char *imname) |
int_fast8_t | delete_image_ID_prefix (const char *prefix) |
int_fast8_t | delete_variable_ID (const char *varname) |
long | create_variable_long_ID (const char *name, long value) |
long | create_variable_string_ID (const char *name, const char *value) |
long | create_image_ID (const char *name, long naxis, uint32_t *size, uint8_t atype, int shared, int nbkw) |
int_fast8_t | clearall () |
void * | save_fits_function (void *ptr) |
2. KEYWORDS | |
long | image_write_keyword_L (const char *IDname, const char *kname, long value, const char *comment) |
long | image_write_keyword_D (const char *IDname, const char *kname, double value, const char *comment) |
long | image_write_keyword_S (const char *IDname, const char *kname, const char *value, const char *comment) |
long | image_list_keywords (const char *IDname) |
long | image_read_keyword_D (const char *IDname, const char *kname, double *val) |
long | image_read_keyword_L (const char *IDname, const char *kname, long *val) |
3. READ SHARED MEM IMAGE AND SIZE | |
long | read_sharedmem_image_size (const char *name, const char *fname) |
long | read_sharedmem_image (const char *name) |
4. CREATE IMAGE | |
long | create_1Dimage_ID (const char *ID_name, uint32_t xsize) |
long | create_1DCimage_ID (const char *ID_name, uint32_t xsize) |
long | create_2Dimage_ID (const char *ID_name, uint32_t xsize, uint32_t ysize) |
long | create_2Dimage_ID_double (const char *ID_name, uint32_t xsize, uint32_t ysize) |
long | create_2DCimage_ID (const char *ID_name, uint32_t xsize, uint32_t ysize) |
long | create_2DCimage_ID_double (const char *ID_name, uint32_t xsize, uint32_t ysize) |
long | create_3Dimage_ID (const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize) |
long | create_3Dimage_ID_double (const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize) |
long | create_3DCimage_ID (const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize) |
5. CREATE VARIABLE | |
long | create_variable_ID (const char *name, double value) |
6. COPY IMAGE | |
long | copy_image_ID (const char *name, const char *newname, int shared) |
long | chname_image_ID (const char *ID_name, const char *new_name) |
long | COREMOD_MEMORY_cp2shm (const char *IDname, const char *IDshmname) |
7. DISPLAY / LISTS | |
int_fast8_t | init_list_image_ID_ncurses (const char *termttyname) |
void | close_list_image_ID_ncurses (void) |
int_fast8_t | list_image_ID_ncurses () |
int_fast8_t | list_image_ID_ofp (FILE *fo) |
int_fast8_t | list_image_ID_ofp_simple (FILE *fo) |
int_fast8_t | list_image_ID () |
int_fast8_t | list_image_ID_file (const char *fname) |
int_fast8_t | list_variable_ID () |
int_fast8_t | list_variable_ID_file (const char *fname) |
8. TYPE CONVERSIONS TO AND FROM COMPLEX | |
int_fast8_t | mk_complex_from_reim (const char *re_name, const char *im_name, const char *out_name, int sharedmem) |
int_fast8_t | mk_complex_from_amph (const char *am_name, const char *ph_name, const char *out_name, int sharedmem) |
int_fast8_t | mk_reim_from_complex (const char *in_name, const char *re_name, const char *im_name, int sharedmem) |
int_fast8_t | mk_amph_from_complex (const char *in_name, const char *am_name, const char *ph_name, int sharedmem) |
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) |
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) |
9. VERIFY SIZE | |
int_fast8_t | check_2Dsize (const char *ID_name, uint32_t xsize, uint32_t ysize) |
int_fast8_t | check_3Dsize (const char *ID_name, uint32_t xsize, uint32_t ysize, uint32_t zsize) |
long | COREMOD_MEMORY_check_2Dsize (const char *IDname, uint32_t xsize, uint32_t ysize) |
long | COREMOD_MEMORY_check_3Dsize (const char *IDname, uint32_t xsize, uint32_t ysize, uint32_t zsize) |
10. COORDINATE CHANGE | |
int_fast8_t | rotate_cube (const char *ID_name, const char *ID_out_name, int orientation) |
11. SET IMAGE FLAGS / COUNTERS | |
long | COREMOD_MEMORY_image_set_status (const char *IDname, int status) |
long | COREMOD_MEMORY_image_set_cnt0 (const char *IDname, int cnt0) |
long | COREMOD_MEMORY_image_set_cnt1 (const char *IDname, int cnt1) |
12. MANAGE SEMAPHORES | |
long | COREMOD_MEMORY_image_set_createsem (const char *IDname, long NBsem) |
long | COREMOD_MEMORY_image_set_sempost (const char *IDname, long index) |
long | COREMOD_MEMORY_image_set_sempost_byID (long ID, long index) |
long | COREMOD_MEMORY_image_set_sempost_excl_byID (long ID, long index) |
long | COREMOD_MEMORY_image_set_sempost_loop (const char *IDname, long index, long dtus) |
long | COREMOD_MEMORY_image_set_semwait (const char *IDname, long index) |
void * | waitforsemID (void *ID) |
long | COREMOD_MEMORY_image_set_semwait_OR_IDarray (long *IDarray, long NB_ID) |
Wait for multiple images semaphores [OR], only works for sem0. More... | |
long | COREMOD_MEMORY_image_set_semflush_IDarray (long *IDarray, long NB_ID) |
flush multiple semaphores More... | |
long | COREMOD_MEMORY_image_set_semflush (const char *IDname, long index) |
set semaphore value to 0 More... | |
13. SIMPLE OPERATIONS ON STREAMS | |
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. More... | |
long | COREMOD_MEMORY_stream_halfimDiff (const char *IDstream_name, const char *IDstreamout_name, long semtrig) |
long | COREMOD_MEMORY_streamAve (const char *IDstream_name, int NBave, int mode, const char *IDout_name) |
Averages frames in stream. More... | |
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 More... | |
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 semaphore More... | |
long | COREMOD_MEMORY_streamDelay (const char *IDin_name, const char *IDout_name, long delayus, long dtus) |
long | COREMOD_MEMORY_SaveAll_snapshot (const char *dirname) |
long | COREMOD_MEMORY_SaveAll_sequ (const char *dirname, const char *IDtrig_name, long semtrig, long NBframes) |
long | COREMOD_MEMORY_image_NETWORKtransmit (const char *IDname, const char *IPaddr, int port, int mode, int RT_priority) |
long | COREMOD_MEMORY_image_NETWORKreceive (int port, int mode, int RT_priority) |
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) |
14. DATA LOGGING | |
int_fast8_t | COREMOD_MEMORY_logshim_printstatus (const char *IDname) |
int_fast8_t | COREMOD_MEMORY_logshim_set_on (const char *IDname, int setv) |
int_fast8_t | COREMOD_MEMORY_logshim_set_logexit (const char *IDname, int setv) |
long | COREMOD_MEMORY_sharedMem_2Dim_log (const char *IDname, uint32_t zsize, const char *logdir, const char *IDlogdata_name) |
Function prototypes for cfitsTK memory functions.
Functions to handle images and streams
int_fast8_t check_2Dsize | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize | ||
) |
int_fast8_t check_3Dsize | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize, | ||
uint32_t | zsize | ||
) |
long chname_image_ID | ( | const char * | ID_name, |
const char * | new_name | ||
) |
int_fast8_t clearall | ( | ) |
void close_list_image_ID_ncurses | ( | void | ) |
long long compute_image_memory | ( | ) |
long compute_nb_image | ( | ) |
long compute_nb_variable | ( | ) |
long compute_variable_memory | ( | ) |
long copy_image_ID | ( | const char * | name, |
const char * | newname, | ||
int | shared | ||
) |
long COREMOD_MEMORY_check_2Dsize | ( | const char * | IDname, |
uint32_t | xsize, | ||
uint32_t | ysize | ||
) |
long COREMOD_MEMORY_check_3Dsize | ( | const char * | IDname, |
uint32_t | xsize, | ||
uint32_t | ysize, | ||
uint32_t | zsize | ||
) |
long COREMOD_MEMORY_cp2shm | ( | const char * | IDname, |
const char * | IDshmname | ||
) |
copy an image to shared memory
long COREMOD_MEMORY_image_NETWORKreceive | ( | int | port, |
int | mode, | ||
int | RT_priority | ||
) |
long COREMOD_MEMORY_image_NETWORKtransmit | ( | const char * | IDname, |
const char * | IPaddr, | ||
int | port, | ||
int | mode, | ||
int | RT_priority | ||
) |
continuously transmits 2D image through TCP link mode = 1, force counter to be used for synchronization, ignore semaphores if they exist
long COREMOD_MEMORY_image_set_cnt0 | ( | const char * | IDname, |
int | cnt0 | ||
) |
long COREMOD_MEMORY_image_set_cnt1 | ( | const char * | IDname, |
int | cnt1 | ||
) |
long COREMOD_MEMORY_image_set_createsem | ( | const char * | IDname, |
long | NBsem | ||
) |
long COREMOD_MEMORY_image_set_semflush | ( | const char * | IDname, |
long | index | ||
) |
set semaphore value to 0
long COREMOD_MEMORY_image_set_semflush_IDarray | ( | long * | IDarray, |
long | NB_ID | ||
) |
flush multiple semaphores
long COREMOD_MEMORY_image_set_sempost | ( | const char * | IDname, |
long | index | ||
) |
long COREMOD_MEMORY_image_set_sempost_byID | ( | long | ID, |
long | index | ||
) |
long COREMOD_MEMORY_image_set_sempost_excl_byID | ( | long | ID, |
long | index | ||
) |
long COREMOD_MEMORY_image_set_sempost_loop | ( | const char * | IDname, |
long | index, | ||
long | dtus | ||
) |
long COREMOD_MEMORY_image_set_semwait | ( | const char * | IDname, |
long | index | ||
) |
long COREMOD_MEMORY_image_set_semwait_OR_IDarray | ( | long * | IDarray, |
long | NB_ID | ||
) |
Wait for multiple images semaphores [OR], only works for sem0.
long COREMOD_MEMORY_image_set_status | ( | const char * | IDname, |
int | status | ||
) |
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
takes a 3Dimage (circular buffer) and writes slices to a 2D image with time interval specified in us
If NBcubes=1, then the circular buffer named IDinname is sent to IDoutname at a frequency of 1/usperiod MHz If NBcubes>1, several circular buffers are used, named ("%S_%03ld", IDinname, cubeindex). Semaphore semtrig of image IDsync_name triggers switch between circular buffers, with a delay of offsetus. The number of consecutive sem posts required to advance to the next circular buffer is period
IDinname | Name of DM circular buffer (appended by _000, _001 etc... if NBcubes>1) |
IDoutname | Output DM channel stream |
usperiod | Interval between consecutive frames [us] |
NBcubes | Number of input DM circular buffers |
period | If NBcubes>1: number of input triggers required to advance to next input buffer |
offsetus | If NBcubes>1: time offset [us] between input trigger and input buffer switch |
IDsync_name | If NBcubes>1: Stream used for synchronization |
semtrig | If NBcubes>1: semaphore used for synchronization |
timingmode | Not used |
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 semaphore
[in] | IDinname | 3D circular buffer of frames to be written |
[out] | IDoutname | 2D output stream |
[in] | period | number of semaphore waits required to advance to next slice in the circular buffer |
[in] | offsetus | fixed time offset between trigger stream and output write |
[in] | IDsync_name | trigger stream |
[in] | smmtrig | semaphore index for trigger |
[in] | timingmode |
int_fast8_t COREMOD_MEMORY_logshim_printstatus | ( | const char * | IDname | ) |
int_fast8_t COREMOD_MEMORY_logshim_set_logexit | ( | const char * | IDname, |
int | setv | ||
) |
int_fast8_t COREMOD_MEMORY_logshim_set_on | ( | const char * | IDname, |
int | setv | ||
) |
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_SaveAll_sequ | ( | const char * | dirname, |
const char * | IDtrig_name, | ||
long | semtrig, | ||
long | NBframes | ||
) |
long COREMOD_MEMORY_SaveAll_snapshot | ( | const char * | dirname | ) |
long COREMOD_MEMORY_sharedMem_2Dim_log | ( | const char * | IDname, |
uint32_t | zsize, | ||
const char * | logdir, | ||
const char * | IDlogdata_name | ||
) |
long COREMOD_MEMORY_stream_halfimDiff | ( | const char * | IDstream_name, |
const char * | IDstreamout_name, | ||
long | semtrig | ||
) |
difference between two halves of stream image
long COREMOD_MEMORY_streamAve | ( | const char * | IDstream_name, |
int | NBave, | ||
int | mode, | ||
const char * | IDout_name | ||
) |
Averages frames in stream.
[in] | IDstream_name | Input stream |
[in] | NBave | Number of consecutive frames to be averaged together |
[in] | mode | 1: Perform average once, exit when completed and write output to local image 2: Run forever, write output to shared mem stream |
[out] | IDout_name | output stream name |
long COREMOD_MEMORY_streamDelay | ( | const char * | IDin_name, |
const char * | IDout_name, | ||
long | delayus, | ||
long | dtus | ||
) |
IDout_name is a time-delayed copy of IDin_name
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.
long create_1DCimage_ID | ( | const char * | ID_name, |
uint32_t | xsize | ||
) |
long create_1Dimage_ID | ( | const char * | ID_name, |
uint32_t | xsize | ||
) |
long create_2DCimage_ID | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize | ||
) |
long create_2DCimage_ID_double | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize | ||
) |
long create_2Dimage_ID | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize | ||
) |
long create_2Dimage_ID_double | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize | ||
) |
long create_3DCimage_ID | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize, | ||
uint32_t | zsize | ||
) |
long create_3Dimage_ID | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize, | ||
uint32_t | zsize | ||
) |
long create_3Dimage_ID_double | ( | const char * | ID_name, |
uint32_t | xsize, | ||
uint32_t | ysize, | ||
uint32_t | zsize | ||
) |
long create_image_ID | ( | const char * | name, |
long | naxis, | ||
uint32_t * | size, | ||
uint8_t | atype, | ||
int | shared, | ||
int | nbkw | ||
) |
long create_variable_ID | ( | const char * | name, |
double | value | ||
) |
floating point double
long create_variable_long_ID | ( | const char * | name, |
long | value | ||
) |
long
long create_variable_string_ID | ( | const char * | name, |
const char * | value | ||
) |
string
int_fast8_t delete_image_ID | ( | const char * | imname | ) |
int_fast8_t delete_image_ID_prefix | ( | const char * | prefix | ) |
int_fast8_t delete_variable_ID | ( | const char * | varname | ) |
long image_ID | ( | const char * | name | ) |
long image_ID_noaccessupdate | ( | const char * | name | ) |
long image_list_keywords | ( | const char * | IDname | ) |
long image_read_keyword_D | ( | const char * | IDname, |
const char * | kname, | ||
double * | val | ||
) |
long image_read_keyword_L | ( | const char * | IDname, |
const char * | kname, | ||
long * | val | ||
) |
long image_write_keyword_D | ( | const char * | IDname, |
const char * | kname, | ||
double | value, | ||
const char * | comment | ||
) |
long image_write_keyword_L | ( | const char * | IDname, |
const char * | kname, | ||
long | value, | ||
const char * | comment | ||
) |
long image_write_keyword_S | ( | const char * | IDname, |
const char * | kname, | ||
const char * | value, | ||
const char * | comment | ||
) |
int_fast8_t init_COREMOD_memory | ( | ) |
int_fast8_t init_list_image_ID_ncurses | ( | const char * | termttyname | ) |
int_fast8_t list_image_ID | ( | ) |
int_fast8_t list_image_ID_file | ( | const char * | fname | ) |
int_fast8_t list_image_ID_ncurses | ( | ) |
int_fast8_t list_image_ID_ofp | ( | FILE * | fo | ) |
int_fast8_t list_image_ID_ofp_simple | ( | FILE * | fo | ) |
int_fast8_t list_variable_ID | ( | ) |
int_fast8_t list_variable_ID_file | ( | const char * | fname | ) |
int_fast8_t memory_monitor | ( | const char * | termttyname | ) |
int_fast8_t mk_amph_from_complex | ( | const char * | in_name, |
const char * | am_name, | ||
const char * | ph_name, | ||
int | sharedmem | ||
) |
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 | ||
) |
int_fast8_t mk_complex_from_amph | ( | const char * | am_name, |
const char * | ph_name, | ||
const char * | out_name, | ||
int | sharedmem | ||
) |
int_fast8_t mk_complex_from_reim | ( | const char * | re_name, |
const char * | im_name, | ||
const char * | out_name, | ||
int | sharedmem | ||
) |
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 | ||
) |
int_fast8_t mk_reim_from_complex | ( | const char * | in_name, |
const char * | re_name, | ||
const char * | im_name, | ||
int | sharedmem | ||
) |
long next_avail_image_ID | ( | ) |
long next_avail_variable_ID | ( | ) |
long read_sharedmem_image | ( | const char * | name | ) |
long read_sharedmem_image_size | ( | const char * | name, |
const char * | fname | ||
) |
Read shared memory image size
[in] | name | char*
|
[in] | fname | char* file name to write image name |
int_fast8_t rotate_cube | ( | const char * | ID_name, |
const char * | ID_out_name, | ||
int | orientation | ||
) |
void* save_fits_function | ( | void * | ptr | ) |
long variable_ID | ( | const char * | name | ) |
void* waitforsemID | ( | void * | ID | ) |