AllenNeuralDynamics / AllenNeuralDynamics/exa-spim-control

Remove dangling image copy operation

Open
#17 2 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

The eGrabber api showcases an example where you can write to an existing buffer. Pasted below.
````python
"""Grab into user allocated buffer. sample240.py"""

from egrabber import *

gentl = EGenTL()
grabber = EGrabber(gentl)
payload_size = grabber.get_payload_size()
user_buffer = bytearray(payload_size)
grabber.announce_and_queue(UserMemory(user_buffer))
grabber.start(1)
with Buffer(grabber) as buffer:
base = buffer.get_info(BUFFER_INFO_BASE, INFO_DATATYPE_PTR)
data_size = buffer.get_info(BUFFER_INFO_DATA_SIZE, INFO_DATATYPE_SIZET)
print('User memory address: {}, buffer data size: {}'.format(base, data_size))
grabber.stop()
grabber.realloc_buffers(0)
````

It would be a huge win to be able to write this into the shared memory double buffer so that the image would never have to be copied.

Note: that this is only practical if we
1. do not need to do any point-operations before sending the image to ImarisWriter. (i.e: transposing the image.)
2. do not need to use a copy of the image anywhere else. (This could be tricky with MIPs, but still doable.)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.