milk
1.01
Modular Image processing Library toolKit
|
Go to the documentation of this file.
10 #ifndef _IMAGESTREAMIO_H
11 #define _IMAGESTREAMIO_H
25 errno_t init_ImageStreamIO();
53 inline uint64_t ImageStreamIO_nbSlices(
const IMAGE *image) {
54 return (image->md->
naxis == 3 ? image->md->
size[2] : 1);
57 inline uint64_t ImageStreamIO_writeIndex(
const IMAGE *image) {
58 return (image->md->
cnt1 + 1) % ImageStreamIO_nbSlices(image);
61 inline uint64_t ImageStreamIO_readLastWroteIndex(
const IMAGE *image) {
62 return (image->md->
naxis == 3 ? image->md->
cnt1 : 0);
90 const unsigned int slice_index,
117 const uint64_t write_index = ImageStreamIO_writeIndex(image);
145 const int64_t read_index = ImageStreamIO_readLastWroteIndex(image);
432 const struct timespec *semwts
int ImageStreamIO_getsemwaitindex(IMAGE *image, int semindexdefault)
Get available semaphore index.
Definition: ImageStreamIO.c:1657
errno_t ImageStreamIO_closeIm(IMAGE *image)
Close a shared memmory image stream.
Definition: ImageStreamIO.c:1286
IMAGE structure The IMAGE structure includes :
Definition: ImageStruct.h:366
errno_t ImageStreamIO_readLastWroteBuffer(const IMAGE *image, void **buffer)
Get the raw pointer where the consumer will find the last frame wrote.
Definition: ImageStreamIO.h:141
errno_t ImageStreamIO_filename(char *file_name, size_t ssz, const char *im_name)
Get the standard stream filename.
Definition: ImageStreamIO.c:369
int ImageStreamIO_semtimedwait(IMAGE *image, int index, const struct timespec *semwts)
Definition: ImageStreamIO.c:1750
errno_t ImageStreamIO_set_default_printError()
Set the error reporting function to the default provided by the library.
Definition: ImageStreamIO.c:102
int ImageStreamIO_destroysem(IMAGE *image)
Destroy shmim semaphores.
Definition: ImageStreamIO.c:1336
errno_t ImageStreamIO_readBufferAt(const IMAGE *image, const unsigned int slice_index, void **buffer)
Get the raw pointer to the beginning of the slice slice_index.
Definition: ImageStreamIO.c:283
errno_t ImageStreamIO_read_sharedmem_image_toIMAGE(const char *name, IMAGE *image)
Read / connect to existing shared memory image stream.
Definition: ImageStreamIO.c:1051
errno_t ImageStreamIO_destroyIm(IMAGE *image)
Deallocate and remove an IMAGE structure.
Definition: ImageStreamIO.c:925
long ImageStreamIO_sempost(IMAGE *image, long index)
Post all shmim semaphores.
Definition: ImageStreamIO.c:1485
errno_t ImageStreamIO_set_printError(errno_t(*new_printError)(const char *, const char *, int, errno_t, char *))
Set the error reporting function. The new function supplied by the pointer will be called whenever a ...
Definition: ImageStreamIO.c:108
int ImageStreamIO_bitpix(uint8_t atype)
Get the FITSIO BITPIX from the data type code.
Definition: ImageStreamIO.c:447
errno_t ImageStreamIO_createIm(IMAGE *image, const char *name, long naxis, uint32_t *size, uint8_t atype, int shared, int NBkw)
Create shared memory image stream (legacy API)
Definition: ImageStreamIO.c:582
Image structure definition.
errno_t __attribute__((hot))
Logs a shared memory stream onto disk.
Definition: logshmim.c:685
long ImageStreamIO_sempost_loop(IMAGE *image, long index, long dtus)
Post shmim semaphores at regular time interval.
Definition: ImageStreamIO.c:1622
int ImageStreamIO_typesize(uint8_t atype)
Get the size in bytes from the data type code.
Definition: ImageStreamIO.c:406
int ImageStreamIO_createsem(IMAGE *image, long NBsem)
Create shmim semaphores.
Definition: ImageStreamIO.c:1407
long ImageStreamIO_semflush(IMAGE *image, long index)
Flush all semaphores of a shmim.
Definition: ImageStreamIO.c:1783
int ImageStreamIO_semtrywait(IMAGE *image, int index)
Definition: ImageStreamIO.c:1735
errno_t ImageStreamIO_openIm(IMAGE *image, const char *name)
Connect to an existing shared memory image stream.
Definition: ImageStreamIO.c:997
int ImageStreamIO_semwait(IMAGE *image, int index)
Wait for semaphore.
Definition: ImageStreamIO.c:1720
void * ImageStreamIO_get_image_d_ptr(IMAGE *image)
Definition: ImageStreamIO.c:1007
errno_t ImageStreamIO_createIm_gpu(IMAGE *image, const char *name, long naxis, uint32_t *size, uint8_t atype, int8_t location, int shared, int NBsem, int NBkw, uint64_t imagetype)
Create shared memory image stream.
Definition: ImageStreamIO.c:600
errno_t ImageStreamIO_writeBuffer(const IMAGE *image, void **buffer)
Get the raw pointer where the producer should write.
Definition: ImageStreamIO.h:113
long ImageStreamIO_sempost_excl(IMAGE *image, long index)
Post all shmim semaphores except one.
Definition: ImageStreamIO.c:1560