Class to manage a stack of images in shared memory. More...
#include <sharedim_stack.h>
Public Member Functions | |
| sharedim_stack () | |
| Constructor. | |
| void * | get_shmemptr () |
| key_t | get_shmemkey () |
| int | get_shmemid () |
| size_t | get_shmemsz () |
| int | get_n_images () |
| Returns the value of n_images currently in the header. | |
| int | set_max_n_images (int mni) |
| Sets max_n_images in the header. | |
| int | get_max_n_images () |
| Returns the value of max_n_images currently in the header. | |
| int | get_last_image () |
| Returns the value of last_image currently in the header. | |
| int | get_last_image_abs () |
| sharedim< IMDATA_TYPE > * | calc_im_pos (int imno) |
| Calculates the offset of the image given by imno, takes into account max_n_images and available space. | |
| int | set_saved (int imno, int sv) |
| Update the saved field of this image. | |
| int | create_shm (key_t mkey, size_t sz) |
| For the writer process, creates then attaches the shared memory. | |
| int | create_shm (key_t mkey, int nims, size_t imsz) |
| For the writer process, creates then attaches the shared memory. | |
| int | attach_shm (key_t mkey) |
| Attachess the shared memory. A Reader process should start here. | |
| sharedim< IMDATA_TYPE > * | set_next_image (int nx, int ny) |
| Sets the next image, and returns a pointer to it, but does not increment last_image. | |
| int | enable_next_image () |
| Increments last_image. | |
| sharedim< IMDATA_TYPE > | get_image (int imno) |
| Gets an image, as a sharedim structure, with the imdata pointer properly set for the calling process. | |
Public Attributes | |
| sharedim_stack_header * | header |
| Convenient pointer to the stack header, has same value as shmemptr. | |
| int | next_last_image |
Protected Attributes | |
| void * | shmemptr |
| The pointer to the shared memory block. | |
| key_t | shmemkey |
| The key used to lookup the shared memory. | |
| int | shmemid |
| The shared memory id. | |
| size_t | shmemsz |
| Size of the shared memory block. | |
| intptr_t * | image_list |
| Convenient pointer to the list of image offsets. | |
| struct shmid_ds | shmstats |
| Used to retrieve shared memory block size. | |
Can be used by both the writer and the readers
Definition at line 101 of file sharedim_stack.h.