Click here to show toolbars of the Web Online Help System: show toolbars |
MIL_TEXT_PTR MemPtrOrFileName, | //in-out |
MIL_ID SysId, | //in |
MIL_INT64 Operation, | //in |
MIL_INT64 StreamType, | //in |
MIL_DOUBLE Version, | //in |
MIL_INT64 ControlFlag, | //in |
MIL_ID *ContextBeadIdPtr, | //in-out |
MIL_INT *SizeByteVarPtr | //out |
This function can load, restore, or save a bead context from/to a file or memory stream.
To inquire the number of bytes necessary to save a bead context, you should first call this function (MbeadStream()) with M_INQUIRE_SIZE_BYTE.
The content saved to memory stream is equivalent to the content saved to file. In addition, any file saved using this function is equivalent to a file saved with MbeadSave().
You can use this and other MIL stream functions, for example, to save all required MIL objects, as well as any other custom data, for your application to a memory stream. Once in a memory stream, you can write the stream to a single file or transfer it over a network. You are responsible for concatenating the streams and for saving the stream to file. All information about the previously allocated bead context (and the templates therein) is saved.
All of the bead context's settings that were in effect when the bead context was saved will be restored. The templates contained within a loaded or restored bead context are not preprocessed, therefore you must call MbeadTrain() before performing a verification with MbeadVerify(). If you had associated a training image with a camera calibration context and you did not save it with the context, you must re-associate the camera calibration context, using MbeadControl() with M_ASSOCIATED_CALIBRATION.
Using MbeadStream(), you can choose to save a backwards-compatible version of the bead context, which will work using a version of MIL that is up to one major release older than the current version (depending on which version is specified). For example, if you allocate a bead context using MIL 10.0 and save it to version 9.0 PP2, you can restore this object on a computer where MIL 9.0 PP2 is installed. However, all settings and features unique to the higher version will be ignored when restored using the lower version. Besides saving backwards-compatible versions, you can also load or restore bead contexts saved using MIL version 9.0 PP2 or above. Settings that do not exist in the lower version will be filled with default values when the bead context is loaded or restored.
Specifies the file or memory stream.
See the Parameter associations section for possible values that can be returned/specified.
Specifies the system on which to restore the bead context.
See the Parameter associations section for possible values that can be specified.
Specifies the operation to perform.
See the Parameter associations section for possible values that can be specified.
Specifies the MIL version of the bead context. When performing an M_LOAD or M_RESTORE operation, this parameter must be set to M_DEFAULT.
See the Parameter associations section for possible values that can be specified.
Specifies whether to restore the camera calibration context from the bead context, or save the camera calibration context with the bead context.
![]() |
|||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Description | ||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies that the camera calibration is not saved or restored. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies that the camera calibration is saved or restored, depending on the MemPtrOrFileName parameter. |
Specifies the address of the variable in which to write or from which to read the identifier of the bead context.
See the Parameter associations section for possible values that can be returned/specified.
The table below lists possible values for the MemPtrOrFileName, SysId, Operation, Version, and ContextBeadIdPtr parameters.
![]() |
|||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Description | ||||||||||||||||||||||||||||||||||||||
MemPtrOrFileName - Possible values passed or returned |
|||||||||||||||||||||||||||||||||||||||
SysId | |||||||||||||||||||||||||||||||||||||||
Version | |||||||||||||||||||||||||||||||||||||||
ContextBeadIdPtr - Possible values passed or returned |
|||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Inquires the number of bytes required to save a bead context to memory stream. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
This parameter must be set to M_NULL. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
This parameter must be set to M_NULL. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the MIL version with which the bead context must be compatible when saved. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the current version of MIL. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the version as being MIL 9.0 Processing Pack 2. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the version as being MIL 10.0. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the version as being MIL 10.0 Processing Pack 1. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the version as being MIL 10.0 Processing Pack 2. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the address of the variable containing the identifier of the bead context. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Loads the content of a specified file or memory stream into a previously allocated bead context. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the file or memory stream from which to load the context. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
[This is
only applicable to Windows]
Opens a dialog box from which you can interactively specify the drive, directory, and name of the file, when the StreamType parameter is set to M_FILE. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the drive, directory, and name of the file (for example, "C:\mydirectory\myfile"), when the StreamType parameter is set to M_FILE. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the address of the block of memory, when the StreamType parameter is set to M_MEMORY. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
This parameter must be set to M_NULL. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
This parameter must be set to M_DEFAULT. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the address of the variable containing the identifier of the bead context. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Restores a bead context from a file or memory stream and assigns it a MIL identifier. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the file or memory stream from which to restore the context. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
[This is
only applicable to Windows]
Opens a dialog box from which you can interactively specify the drive, directory, and name of the file, when the StreamType parameter is set to M_FILE. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the drive, directory, and name of the file (for example, "C:\mydirectory\myfile"), when the StreamType parameter is set to M_FILE. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the address of the block of memory, when the StreamType parameter is set to M_MEMORY. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the system on which to allocate the bead context. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the default Host system of the current MIL application. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies a valid system identifier, previously allocated using MsysAlloc(). |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
This parameter must be set to M_DEFAULT. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the address of the variable in which to write the identifier of the bead context. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Saves a bead context to a specified file or memory stream. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the file or memory stream. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
[This is
only applicable to Windows]
Opens a dialog box from which you can interactively specify the drive, directory, and name of the file, when the StreamType parameter is set to M_FILE. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the drive, directory, and name of the file (for example, "C:\mydirectory\myfile"), when the StreamType parameter is set to M_FILE. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the address of the block of memory, when the StreamType parameter is set to M_MEMORY. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
This parameter must be set to M_NULL. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the MIL version with which the bead context must be compatible when saved. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the current version of MIL. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the version as being MIL 9.0 Processing Pack 2. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the version as being MIL 10.0. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the version as being MIL 10.0 Processing Pack 1. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the version as being MIL 10.0 Processing Pack 2. |
||||||||||||||||||||||||||||||||||||||
![]() ![]() |
Specifies the address of the variable containing the identifier of the bead context to save. |
1 If you are passing the value in a variable, don't enclose it in MIL_TEXT().
Header | Include mil.h. |
Library | Use mil.lib; milbead.lib. |
DLL | Requires mil.dll; milbead.dll. |