hBTis not by modifying the class file but using a startup script. To do this, make a file called
SETTINGSdirectory and in there any changes. e.g.
BakingTray('dummyMode',true)Most features should work but simulated mode is less well tested than normal operation. Simulated mode assists in development whilst not at the rig.
SIBTtile acquired callback.
TileStepSizeproperties of the recipe are calculated on the fly. So don't access these repeatedly in a time-critical loop.
help BakingTray) for running without any hardware, you might want to run with just one hardware component missing. Running with a simulated laser attached is useful, since it allows the acquisition to proceed with the physical laser switched off. Start BakingTray normally then do the following:
SIBT/tileAcqDoneis run by ScanImage each time a tile position has been acquired. This happens because the
SIBTconstructor adds a listener to the ScanImage object at
hSI.hUserFunctions.acqDone, one of the hooks for the ScanImage User-Functions. The
tileAcqDonecallback captures the last acquired images, downsamples them, and places them in
hBT.downSampledTileBuffer, where other methods easily have access to the data.
BT.recipe. The tile pattern is produced by the method
BT.recipe.tilePattern, which generates an n-by-2 matrix. Each row is a different tile position. The first column is the X stage location and the second column the Y stage location. The matrix is generated by
generateTileGrid, which is a function local to
BT.recipe.tilePattern. This function produces the tile pattern based upon the following variables:
NumTiles, which is attached to
NumTilesclass returns the number of tiles needed to cover the desired area in X and Y. It does this based upon the length and breadth of the bounding box and the tile overlap. At the command line you can do: