-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add quick plane switching capability to BK biplane probes #103
Comments
2013-02-15 10:55 BK supports a list of events attached at the bottom of the message. Subscription to events is done as follows (we have oemClient in bkProFocusVideoSource): this->oemClient->RegisterCallbackFunc(AutoUpdate, this->buffer, sizeof(this->buffer),"EVENT:"); When event arrives, buffer looks like this: "EVENT:<event_type>;". I tested, and this does work for events like FREEZE/UNFREEZE and TRANSDUCER_CONNECT (by the way, I think it may make sense to handle FREEZE event, to notify the user at least). According to the BK technical contact, there is also event SCAN_PLANE that should be sent when sagittal/transverse arrays are switched on 8848. However, experiments show that when this switch happens, the event received is DIAGNOSTIC_SETUP_SELECTED, not SCAN_PLANE. I emailed our contact at BK about the inconsistent event message, will update when hear back. --- List of supported events --- 7.11 Event Messages 2013-02-15 20:07 2013-02-16 11:33 Once you've got the API under control, I can help explain to you which buffers should receive the data. 2013-02-19 16:08 @lassoan: if you can give me a high-level idea what you changed in Grabbie, this might help. BK people told me there was not much changes in Grabbie functionality other than bug fixes and addition of Matlab interface. 2013-02-19 16:28 In the short therm the best is to a diff for the old and new Grabbie and redo the relevant changes in GrabbieLib (the cleaned up version). In the long term they should clean up their Grabbie SDK. We can send our GrabbieLib to give them an idea what was wrong with their implementation and if needed I can review new Grabbie versions. 2013-02-21 10:15 2013-02-22 14:27 this->parSyncConnection->SendOemQuery("CONFIG:DATA:SUBSCRIBE "SCAN_PLANE";"); This appears to work as expected. 2013-02-22 14:31 https://www.assembla.com/code/pltools/subversion/commit/45 2013-02-22 14:33 2013-05-24 12:20 When a scan plane switch event is triggered, we record the current vtkInternal and when new data is acquired, we allocate data to the channel in the current vtkInternal This would require that at least one output channel exists for each possible output type (as usual) 2013-05-24 16:14 We can also query TRANSDUCER_LIST to retrieve a full list of transducers attached. 2013-05-27 16:52 Instead of duplicating the vtkInternal we should just define a ScanPlaneInfo structure that contains SCAN_PLANE-specific information and put into the vtkInternal class: 2013-05-27 17:08 |
With the current vtkBkProFocusVideoSource switching between sagittal and axial transducer requires disconnect and connect. Now Plus supports multiple output channels (each with a different video stream) for devices. However, the BK video source should be update to take advantage of this. The BK video source should detect which scan plane is used for each acquired frame and emit the video on the appropriate corresponding output channel.
Implementation steps:
Migrated from https://app.assembla.com/spaces/plus/tickets/674/details
The text was updated successfully, but these errors were encountered: