Micro-Manager Methods
Initialization and Setup
MMC_LoadDevice /Q /Z deviceLabel, moduleName, deviceName
Instructs Micro-Manager to create and open a new interface for the device specified by moduleName and deviceName, assigning that interface the identity specified by deviceLabel. Call MMC_GetAvailableDevices to obtain a list of devices supported by a specific module (device-adapter).
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | An Igor string containing the case-sensitive label to be used to identify the instance of the device created by this operation. | |
| moduleName | An Igor string containing the 'root' of the name of the Micro-Manager device-adapter to be used for this device. (See Getting Started with MMI for more about the filenames used for device-adapters.) For example, if you want to load a device from the device-adapter embodied by the file mmgr_dal_SutterLambda.dll, the moduleName parameter would be "SutterLambda". | |
| deviceName | An Igor string containing the case-sensitive name of the device you want to load from the adapter. This name is set by the author of the device-adapter, and your parameter must match exactly one of devices supported by the module. | |
See Also
Getting Started with MMI, MMC_GetAvailableDevices, MMC_UnloadDevice
MMC_UnloadDevice /Q /Z deviceLabel
Instructs Micro-Manager to release its interface for the device specified by deviceLabel. The specified device must have been created previously through a call to MMC_LoadDevice.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | An Igor string containing the case-sensitive label of the device to be released. deviceLabel must have been used in the preceding call to MMC_LoadDevice that created the interface. | |
See Also
Getting Started with MMI, MMC_LoadDevice, MMC_UnloadAllDevices
MMC_UnloadAllDevices /Q /Z
Instructs Micro-Manager to delete its interfaces for all currently loaded devices.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
See Also
MMC_LoadDevice, MMC_UnloadDevice
MMC_InitializeAllDevices /Q /Z
Instructs Micro-Manager to initialize the interfaces for all its currently loaded devices.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
See Also
MMC_LoadDevice, MMC_InitializeDevice
MMC_InitializeDevice /Q /Z deviceLabel
Instructs Micro-Manager to initialize its interface for the device specified by deviceLabel. The specified device must have been created previously through a call to MMC_LoadDevice.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | An Igor string containing the case-sensitive label of the 'device' to be initialized. | |
See Also
MMC_LoadDevice, MMC_InitializeAllDevices
MMC_Reset /Q /Z
Resets Micro-Manager's core, unloading all devices and resetting its internal configuration.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
See Also
MMI_Reset, MMC_UnloadAllDevices
MMC_UpdateCoreProperties /Q /Z
Updates Micro-Manager's set of core properties (selected camera, shutter, wheel, etc.) from currently loaded devices.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
See Also
MMC_GetCoreErrorText (errCode)
Returns a string containing the Micro-Manager error text corresponding to the specified error code.
Parameters
| errCode | A number or Igor numeric variable indicating the Micro-Manager error-code whose error text is to be returned. | |
MMC_GetVersionInfo ( )
Returns a string containing the version number of Micro-Manager's core. For example, typing the following on Igor's command line
print MMC_GetVersionInfo()
evokes the response
MMCore version 10.4.0
See Also
MMC_GetAPIVersionInfo, MMI_GetXOPversion
MMC_GetAPIVersionInfo ( )
Returns a string containing the version numbers of Micro-Manager's Module-API and Device-API. For example, typing the following on Igor's command line
print MMC_GetAPIVersionInfo()
evokes the response
Device API version 71, Module API version 10
See Also
MMC_GetVersionInfo, MMI_GetXOPversion
MMC_SaveSystemState /Q /Z fileName
Saves the current state of the Micro-Manager system (i.e. the status of writable properties) as text, to the named file. The file created can be used later by MMC_LoadSystemState to re-install the state into Micro-Manager.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| fileName | A string that specifies the path- and file-name of the file to receive the state information. | |
Details
This operation will overwrite any existing file with the same name. Be sure to use double back-slash characters to separate names within a compound pathname.
See Also
MMC_LoadSystemState, MMC_SaveSystemConfig, MMC_LoadSystemConfig
MMC_LoadSystemState /Q /Z fileName
Loads the state of the Micro-Manager system (i.e. the status of writable properties) from the named file, created by a previous call to MMC_SaveSystemState.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| fileName | A string that specifies the path- and file-name of the file containing the state information to be loaded. | |
Details
Be sure to use double back-slash characters to separate names within a compound pathname.
See Also
MMC_SaveSystemState, MMC_SaveSystemConfig, MMC_LoadSystemConfig
MMC_SaveSystemConfig /Q /Z fileName
Instructs Micro-Manager to save the current system configuration (devices loaded, their labels, etc.) to a text file in Micro-Manager's standard file format. The file created can be used later to re-install the configuration by calling MMC_LoadSystemConfig.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| fileName | A string that specifies the path- and file-name of the file to receive the configuration. | |
Details
This operation will overwrite any existing file with the same name. Be sure to use double back-slash characters to separate names within a compound pathname.
See Also
MMC_LoadSystemConfig /Q /Z fileName
Instructs Micro-Manager to load the system's configuration from a text file created by a previous call to MMC_SaveSystemConfig.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| fileName | A string that specifies the path- and file-name of the file that contains the system configuration to be loaded. | |
Details
Be sure to use double back-slash characters to separate names within a compound pathname.
See Also
Logging and Log Management
MMC_SetPrimaryLogFile /Q /Z logFileName [, truncate]
Sets the named file as Micro-Manager's primary log file.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| logFileName | An Igor string specifying the full pathname of the file to be Micro-Manager's primary log file. If the filename is omitted or if a NULL ("") filename is entered, Micro-Manager's primary log file is disabled. | |
| truncate | An optional numeric parameter (with default value of zero), which specifies how to handle a pre-existing file with the same pathname. If truncate is zero, new entries are appended to the previous contents of the file. If truncate is non-zero, the previous contents of the file are erased before new entries are appended. | |
Details
Be sure to use double back-slash characters to separate names within a compound pathname.
See Also
MMC_GetPrimaryLogFile, MMC_LogMessage
MMC_GetPrimaryLogFile ( )
Returns a string containing the complete pathname of Micro-Manager's primary log file.
See Also
MMC_SetPrimaryLogFile, MMC_LogMessage
MMC_LogMessage /Q /Z message [,debugOnly]
Appends a message to Micro-Manager's primary log file.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| message | An Igor string specifying the message to be appended to the log file. | |
| debugOnly | An optional numeric parameter (with default value of zero). If debugOnly is non-zero, the message is appended to the log file only when debug-logging is enabled. If debugOnly is zero, the message is always appended to the log file. | |
See Also
MMC_GetPrimaryLogFile, MMC_SetPrimaryLogFile, MMC_EnableDebugLog
MMC_EnableDebugLog /Q /Z enableState
Enables or disables logging of Micro-Manager's debug messages.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| enableState | A numeric value that sets the enabled state for debug messages. Setting enableState to zero disables logging of debug messages. Setting enableState to any non-zero value enables logging of debug messages. | |
See Also
MMC_SetPrimaryLogFile, MMC_LogMessage, MMC_DebugLogEnabled
MMC_DebugLogEnabled ( )
Parameters
| (None) | ||
Returns
A numeric value indicating whether debug logging is enabled.
See Also
MMC_SetPrimaryLogFile, MMC_EnableDebugLog
MMC_EnableStdErrLog /Q /Z enableState
Enables or disables Micro-Manager's sending log messages to standard error output.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| enableState | A numeric value that sets the enabled state for sending log messages to stderr. Setting enableState to zero disables sending log messages to stderr. Setting enableState to any non-zero value enables sending log messages to stderr. | |
See Also
MMC_StdErrLogEnabled ( )
Parameters
| (None) | ||
Returns
A numeric value indicating whether logging output is directed to standard error.
See Also
MMC_SetPrimaryLogFile, MMC_EnableStdErrLog
MMC_StartSecondaryLogFile (logFileName, enableDebug, truncate, synchronous)
Starts Micro-Manager's capturing of logging messages into an additional output file. Returns a numeric value identifying the secondary log file created.
Parameters
| logFileName | A string specifying the path- and file-name of the secondary logfile to be used. | |
| enableDebug | A numeric value specifying whether debugging messages should be logged to the secondary file, independent of whether debugging messages are logged to the primary log file. When set to zero, debug messages will be excluded from the secondary log file. When set to any non-zero value, debug messages will be included in the secondary log file. | |
| truncate | A numeric value specifying how to handle any pre-existing file that has the same pathname as specified by logFileName. When set to zero, new log messages are appended to the pre-existing file. When set to any non-zero value, any pre-existing file is cleared before new log messages are written to the file. | |
| synchronous | A numeric value specifying whether writes to the secondary logging file must complete before logging functions return to their caller. When set to zero, writes to the secondary log file are executed asynchronously. When set to any non-zero value, writes to the secondary log file are performed synchronously, ensuring that writes are complete when the logging function returns to its caller. Micro-Manager states that synchronous writes help in some debugging situations, but at a cost in performance. | |
Returns
| A numeric value identifying the secondary log file created. This identifier is required when calling MMC_StopSecondaryLogFile. | ||
Details
Be sure to use double back-slash characters to separate names within a compound pathname.
See Also
MMC_SetPrimaryLogFile, MMC_StopSecondaryLogFile
MMC_StopSecondaryLogFile /Q /Z fileHandle
Halts Micro-Manager's recording of logging messages into the secondary log file specified by the fileHandle.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| fileHandle | A numeric identifier of the selected secondary logfile into which logging is to be halted. | |
See Also
MMC_SetPrimaryLogFile, MMC_StartSecondaryLogFile
Device Listing
MMC_GetDeviceAdapterNames /Q /Z [destinationWave]
Gets a list of root-names for all discoverable device-adapters.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| destinationWave | An optional Igor text wave which is to receive the list of devices. If no existing wave is specified, the results will be written to a new text wave in the current data folder named W_MMCdeviceAdapters. | |
Details
Recall that, under Windows, Micro-Manager's device-adapters are implemented as .dll files with names that match the pattern:
mmgr_dal_<*root-name*>.dll
MMC_GetDeviceAdapterNames returns a list of the root-names of the device-adapters that are accessible to Micro-Manager.
See Also
Getting Started with MMI, MMC_GetDeviceName
MMC_GetAvailableDevices /Q /Z /O moduleName [, destinationWave]
Gets a list of the names of the devices available from the specified module (device-adapter), each together with its device-type and description.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| moduleName | The 'root' name of the module (device-adapter) whose devices are to be listed. The root name of a Micro-Manager module is embedded in the name of the .dll file implementing the device-adapter, as follows: | |
mmgr_dal_<*root-name*>.dll | ||
| destinationWave | An optional Igor text wave which is to receive the list of devices. If no existing wave is specified, the results will be written to a new text wave in the current data folder named W_MMCavailDevices. | |
Details
MMC_GetDeviceAdapterNames returns a list of the root-names of the device-adapters that are accessible to Micro-Manager.
See Also
Getting Started with MMI, MMC_GetLoadedDevices, MMC_GetDeviceType, MMC_GetDeviceName, MMC_GetDeviceLibrary
MMC_GetLoadedDevices /Q /Z destTextWave
Gets a list of the names of the devices loaded into Micro-Manager's core.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| destTextWave | An optional Igor text wave which is to receive the list of devices. If no existing wave is specified, the results will be written to a new text wave in the current data folder named W_MMCloadedDevices. | |
See Also
MMC_GetLoadedDevices, MMC_GetDeviceType, MMC_GetDeviceName, MMC_GetDeviceLibrary
Generic Device Control
MMC_GetDeviceName (deviceLabel)
Returns the device-name for a specified device-label.
Parameters
| deviceLabel | A string containing the case-sensitive Micro-Manager device-label assigned by a previous call to MMC_LoadDevice. | |
Returns
| A string containing the case-sensitive Micro-Manager device-name for to device whose label was provided. | ||
See Also
Getting Started with MMI, MMC_GetDeviceLibrary, MMC_GetDeviceType
MMC_GetDeviceLibrary (deviceLabel)
Returns the root-name of the library (device-adapter) for a specified device-label.
Parameters
| deviceLabel | A string containing the label assigned to the device by a previous call to MMC_LoadDevice. | |
Returns
| A string containing the root-name of the library (device-adapter) implementing the interface to the device specified by the device-label. | ||
See Also
Getting Started with MMI, MMC_GetDeviceName, MMC_GetDeviceType
MMC_GetDeviceType (deviceLabel)
Returns the device-type for a specified device-label.
Parameters
| deviceLabel | A string containing the label assigned to the device by a previous call to MMC_LoadDevice. | |
Returns
| A numeric value encoding the type of device represented by the specified device-label. | ||
Details
The returned numeric value encodes the device-type as follows:
| Code | Device Type |
|---|---|
| 0 | UnknownType |
| 1 | AnyType |
| 2 | CameraDevice |
| 3 | ShutterDevice |
| 4 | StateDevice |
| 5 | StageDevice |
| 6 | XYStageDevice |
| 7 | SerialDevice |
| 8 | GenericDevice |
| 9 | AutoFocusDevice |
| 10 | CoreDevice |
| 11 | ImageProcessorDevice |
| 12 | SignalIODevice |
| 13 | MagnifierDevice |
| 14 | SLMDevice |
| 15 | HubDevice |
| 16 | GalvoDevice |
See Also
MMC_GetDeviceName, MMC_GetDeviceLibrary
MMC_GetPropertyNumeric (deviceLabel, propertyName)
Returns a double containing the numeric value of the named property for the specified device.
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A string containing the case-sensitive name of the property whose value is sought. | |
Returns
| A real, numeric value containing the value of the named property. | ||
Details
Use this function to get the values of any of Micro-Manager's numeric property-types -- floats and integers.
See Also
MMI_GetDevicePropertyList, MMC_GetPropertyString, MMC_SetProperty
MMC_GetPropertyString (deviceLabel, propertyName)
Returns a string containing the value of the named property for the specified device.
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A string containing the case-sensitive name of the property whose value is sought. | |
Returns
| A string containing the value of the named property. | ||
See Also
MMI_GetDevicePropertyList, MMC_GetPropertyNumeric, MMC_SetProperty
MMC_GetAllowedPropertyValues /Q /Z deviceLabel, propertyName [, destTextWave]
Returns a list of allowed string values for the named property for the device specified by the device-label. Only available for properties using string-values.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A string containing the case-sensitive name of the property whose values are sought. | |
| destTextWave | An optional Igor text wave which is to receive the list of allowed values. If no existing wave is specified, the results will be written to a new text wave in the current data folder named W_MMCallowedPropertyValues. | |
See Also
MMI_GetDevicePropertyList, MMC_GetPropertyString, MMC_SetProperty
MMC_IsPropertyReadOnly (deviceLabel, propertyName)
Reports if named property of the specified device is read-only -- it cannot be assigned a new value.
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A case-sensitive string that specifies the name of the property being checked. | |
Returns
| A numeric value (0 or 1), where | ||
| 1 indicates the property is read-only, | ||
| 0 indicates the property is not read-only | ||
See Also
MMC_IsPropertyPreInit (deviceLabel, propertyName)
Reports if named property of the specified device must be assigned a value prior to the device being initialized.
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A case-sensitive string that specifies the name of the property being checked. | |
Returns
| A numeric value (0 or 1), where | ||
| 1 indicates the property must be assigned its value before the device is initialized, | ||
| 0 indicates the property should be assigned its value after the device is initialized | ||
See Also
MMI_GetDevicePropertyList, MMC_SetProperty
MMC_HasPropertyLimits (deviceLabel, propertyName)
Reports if the named numeric property of the specified device has defined upper- and lower-limits to its permitted values.
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A case-sensitive string that specifies the name of the property being checked. | |
Returns
| A numeric value (0 or 1), where | ||
| 1 indicates the property has defined upper- and lower-limits, | ||
| 0 indicates the property does not have defined upper- and lower-limits | ||
See Also
MMI_GetDevicePropertyList, MMC_GetPropertyLowerLimit, MMC_GetPropertyUpperLimit
MMC_GetPropertyLowerLimit (deviceLabel, propertyName)
Returns the minimum permitted value of the named numeric property of the specified device.
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A case-sensitive string that specifies the name of the property being checked. | |
Returns
| A double containing the minimum permitted value of the named property in the specified device. Returns 0 if no minimum value is defined for the property. Returns an error if the property does not exist or is of a non-numeric type. | ||
See Also
MMI_GetDevicePropertyList, MMC_GetPropertyLowerLimit, MMC_GetPropertyUpperLimit
MMC_GetPropertyUpperLimit (deviceLabel, propertyName)
Returns the maximum permitted value of the named numeric property of the specified device.
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A case-sensitive string that specifies the name of the property being checked. | |
Returns
| A double containing the maximum permitted value of the named property in the specified device. Returns 0 if no maximum value is defined for the property. Returns an error if the property does not exist or is of a non-numeric type. | ||
See Also
MMI_GetDevicePropertyList, MMC_GetPropertyLowerLimit, MMC_GetPropertyUpperLimit
MMC_SetProperty /Q /Z /FREE /F=floatValue /I=integerValue /S=stringValue deviceLabel, propertyName
Sets the specified value into the named property of the specified device.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /FREE | When the /FREE flag is omitted, MMI automatically compares a passed numeric value to the property's minimum and maximum permitted values, if they are available from Micro-Manager. If the passed value is outside the limits set by the minimum and maximum values, MMI reports an error and returns without attempting to assign the value to the property. By setting the /FREE flag, MMI assigns the passed numeric value to the property without performing (i.e. 'free of') any bounds checking on the value passed. If the passed value is outside the permitting limits, Micro-Manager returns an error and leaves the property with its previous value. | |
| /F = floatValue | Used to set the value of numeric properties that accept floating-point (non-integer) values. | |
| /I = integerValue | Used to set the value of numeric properties that accept only integer values. | |
| /S = stringValue | Used to set the value of properties that accept only string values. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
| propertyName | A case-sensitive string that specifies the name of the property whose value is being assigned. | |
Details
It is important to note that many numeric properties do not provide explicit minimum and maximum limits. Thus when assigning numeric property values without the /FREE flag, MMI attempts to check the proposed value against Micro-Manager's limits for that property, but if no such limits are available, MMI attempts to assign the proposed value to the property without checks, as if the /FREE flag were set. Users should consider using the /Q and /Z flags to manage MMI's reporting of the errors that may result.
See Also
MMI_GetDevicePropertyList, MMC_GetPropertyNumeric, MMC_GetPropertyString
MMC_GetTimeoutMs ( )
Returns Micro-Manager's timeout period.
Parameters
| None. | ||
Returns
| A numeric value reporting Micro-Manager's internal time-out setting, as an integer number of milliseconds (1 millisecond = 0.001 second). | ||
See Also
MMC_SetTimeoutMs /Q /Z timeOutValue
Sets Micro-Manager's timeout period.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| timeOutValue | A numeric expression specifying the new timeout value, as a positive integer number of milliseconds (1 millisecond = 0.001 second). The value is passed to Micro-Manager as a signed, 32-bit integer. Hence the maximum permitted value is 231 - 1 = 2,147,483,647. | |
See Also
Management of 'current' Device for Specific Roles
MMC_GetCameraDevice ( )
Returns a string containing the Micro-Manager label for the currently selected camera.
Parameters
| None. | ||
Returns
| A string containing the case-sensitive label for the currently selected camera, or an empty string if none is currently selected. | ||
See Also
MMC_SetCameraDevice /Q /Z deviceLabel
Sets the specified device as Micro-Manager's active camera.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
See Also
MMC_GetCameraDevice, MMC_GetDeviceType
MMC_GetShutterDevice
Returns a string containing the Micro-Manager label for the currently selected shutter.
Parameters
| None. | ||
Returns
| A string containing the case-sensitive label for the currently selected shutter, or an empty string if none is currently selected. | ||
See Also
MMC_SetShutterDevice /Q /Z deviceLabel
Sets the specified device as Micro-Manager's active shutter.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
See Also
MMC_GetShutterDevice, MMC_GetDeviceType
MMC_GetFocusDevice
Returns a string containing the Micro-Manager label for the currently selected focus device.
Parameters
| None. | ||
Returns
| A string containing the case-sensitive label for the currently selected focus device, or an empty string if none is currently selected. | ||
See Also
MMC_SetFocusDevice /Q /Z deviceLabel
Sets the specified device as Micro-Manager's active focus device.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
See Also
MMC_GetFocusDevice, MMC_GetDeviceType
MMC_GetXYStageDevice
Returns a string containing the Micro-Manager label for the currently selected XY stage.
Parameters
| None. | ||
Returns
| A string containing the case-sensitive label for the currently selected XY stage, or an empty string if none is currently selected. | ||
See Also
MMC_SetXYStageDevice /Q /Z deviceLabel
Sets the specified device as Micro-Manager's active XY stage device.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
See Also
MMC_GetXYStageDevice, MMC_GetDeviceType
MMC_GetAutoFocusDevice
Returns a string containing the Micro-Manager label for the currently selected auto-focus device.
Parameters
| None. | ||
Returns
| A string containing the case-sensitive label for the currently selected auto-focus device, or an empty string if none is currently selected. | ||
See Also
MMC_SetAutoFocusDevice /Q /Z deviceLabel
Sets the specified device as Micro-Manager's active autofocus device.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
See Also
MMC_GetAutoFocusDevice, MMC_GetDeviceType
MMC_GetSLMDevice
Returns a string containing the Micro-Manager label for the currently selected spatial light modulator (SLM).
Parameters
| None. | ||
Returns
| A string containing the case-sensitive label for the currently selected spatial light modulator (SLM), or an empty string if none is currently selected. | ||
See Also
MMC_SetSLMDevice /Q /Z deviceLabel
Sets the specified device as Micro-Manager's active spatial light modulator.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
See Also
MMC_GetSLMDevice, MMC_GetDeviceType
MMC_GetGalvoDevice
Returns a string containing the Micro-Manager label for the currently selected galvanometer beam-steering device.
Parameters
| None. | ||
Returns
| A string containing the case-sensitive label for the currently selected galvanometer beam-steering device, or an empty string if none is currently selected. | ||
See Also
MMC_SetGalvoDevice /Q /Z deviceLabel
Sets the specified device as Micro-Manager's active galvanometer device.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case-sensitive label assigned to the device by a previous call to MMC_LoadDevice. | |
See Also
MMC_GetGalvoDevice, MMC_GetDeviceType
Image Acquisition
MMC_SnapImage /Q /Z /U /CLRO=colorOrder
Acquires one image from the active camera. If a wave is already bound for the acquisition of single images, the acquired image is also retrieved and written to the bound wave.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /U | Unlock bound image wave, if needed, prior to moving the image-data into the wave. If the /U flag is omitted and the wave is locked, MMI will raise an error, as it will be unable to write the image into the wave. | |
| /CLRO = colorOrder | Setting the color-order flag overrides MMI's default color-ordering when moving the retrieved image to the destination wave. The color-order flag applies only when working with multi-layer color (ex. RGB, RGBA, BGR, BGRA) images and is ignored when working with grayscale (monochrome) images. colorOrder is a case-insensitive string of three or four characters where the first three characters are either "rgb" or "bgr". MMI currently ignores any fourth letter (ex. RGBA) in the string. | |
Details
If MMC_SnapImage is called when no wave is bound to receive the image, then the acquired image remains in Micro-Manager's internal image buffer until it is either retrieved to a wave by calling MMC_GetImage, or it is overwritten by another call to MMC_SnapImage.
See Also
MMC_GetImage, MMI_BindImageWave, MMC_SetCameraDevice, Working with Color Images
MMC_GetImage /Q /Z /CLRO=colorOrder [destinationWave]
Retrieves a single image, acquired by a previous call to MMC_SnapImage, and transfers that image to a wave.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /CLRO = colorOrder | Setting the color-order flag overrides MMI's default color-ordering when moving the retrieved image to the destination wave. The color-order flag applies only when working with multi-layer color (ex. RGB, RGBA, BGR, BGRA) images and is ignored when working with grayscale (monochrome) images. colorOrder is a case-insensitive string of three or four characters where the first three characters are either "rgb" or "bgr". MMI currently ignores any fourth letter (ex. RGBA) in the string. | |
Parameters
| destinationWave | The optional name of a numeric wave that is to receive the acquired image. If an imageWave is specified, that wave (rather than any previously bound image-wave), receives the acquired image. | |
Details
If no imageWave is specified, the image is written to the wave specified by the most recent call to MMI_BindImageWave. If no imageWave is specified and no wave has been bound for the acquisition of single images, an error occurs.
If an Igor image-processor function has been specified by a previous call to MMI_BindImageProcessor, that function will be called after the image is written to the wave.
See Also
MMC_SnapImage, MMI_BindImageWave, MMI_BindImageProcessor, Working with Color Images
MMI_GrabImage /Q /Z /ORIG={row,column,layer,chunk} /CLRO=colorOrder [destinationWave]
Acquires a single image and writes it to a wave with finer control than MMC_GetImage. MMI_GrabImage enables you to acquire and store a series of images in a single Igor wave.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /ORIG = {row,column,layer,chunk} | ||
| An optional set of four integers that specify a vector to the image's origin within the destination wave. The origin defines where the first (top-, left-most) pixel of the acquired image is to be written. If the /ORIG flag is omitted, the acquired image is written to the wave with an origin vector of {0, 0, 0, 0}, i.e. with the top, left pixel of the image at the first row, column, layer and chunk. | ||
| /CLRO = colorOrder | Setting the color-order flag overrides MMI's default color-ordering when moving the retrieved image to the destination wave. The color-order flag applies only when working with multi-layer color (ex. RGB, RGBA, BGR, BGRA) images and is ignored when working with grayscale (monochrome) images. colorOrder is a case-insensitive string of three or four characters where the first three characters are either "rgb" or "bgr". MMI currently ignores any fourth letter (ex. RGBA) in the string. | |
Parameters
| destinationWave | The optional name of a numeric wave that is to receive the acquired image. If an imageWave is specified, that wave (rather than any previously bound image-wave), receives the acquired image. | |
Details
If no imageWave is specified, the image is written to the wave specified by the most recent call to MMI_BindImageWave. If no destinationWave is specified and no wave has been bound for the acquisition of single images, an error occurs.
Recall that each row in the acquired image is written to a column in the destination wave. Thus when sizing a wave for side-by-side display of multiple images, be sure to set the number of columns in the wave to a multiple of the number of rows in the image, and the number of rows in the wave to a multiple of the number of columns in the image.
Similarly, recall that when working with multi-color (ex. RGB) images, each color plane is written to a separate layer in the destination wave.
See Also
MMC_SnapImage, MMC_GetImage, MMC_GetNumberOfComponents, MMI_BindImageWave, Images in Igor Waves, Working with Color Images
MMC_GetNumberOfComponents ( )
Returns the number of components (color channels) acquired by the active camera.
Parameters
| None. | ||
Returns
| A real, numeric value containing the number of components (color channels) acquired by the active camera. | ||
Details
MMC_GetNumberOfComponents returns 1 for monochromatic cameras and either 3 or 4 for color cameras that return RGB or RGBA images, respectively. Note too that MMI currently omits the A (alpha) component when transferring RGBA images to Igor's waves.
When MMI transfers a color image to a wave, each color component is written to a separate layer in the wave. Hence waves intended to hold RGB color images acquired via MMI should contain at least 3 layers.
See Also
Images in Igor Waves, MMI_GrabImage, Working with Color Images
MMC_GetExposure (cameraLabel)
Returns the exposure time (in milliseconds), of the specified camera.
Parameters
| cameraLabel | A string containing the case-sensitive Micro-Manager label of the specified camera. If the parameter is an empty string (""), then the function returns the exposure time of the currently active camera. | |
Returns
| A real, numeric value containing the camera's exposure time, in milliseconds. | ||
See Also
MMC_SetExposure /Q /Z /L=cameraLabel exposureTime
Sets the exposure time of the active camera.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /L = cameraLabel | An optional string containing the case-sensitive Micro-Manager label of the camera whose exposure time is to be set. If the /L flag is not specified, the specified exposure time is installed in the currently active camera. | |
Parameters
| exposureTime | A numeric value that specifies the new exposure time (in milliseconds) that is to be applied to the specified camera. | |
Details
Each camera has its own range of valid exposure times. For most cameras, you can determine the range of valid exposure times by reviewing a list of the camera's properties, as reported by MMI_GetDevicePropertyList.
See Also
MMC_GetExposure, MMI_GetDevicePropertyList
MMC_SetROI /Q /Z /L=cameraLabel ROIwave
Sets the ROI (Region Of Interest) for the specified camera from the specified Igor wave.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /L = cameraLabel | A string containing the case-sensitive Micro-Manager label of the camera whose ROI is to be set. If the /L flag is absent, the operation applies the ROI to the currently active camera. | |
Parameters
| ROIwave | The name of a real, numeric wave that holds the new specifications for the ROI. | |
Details
The ROI is specified as a sequence of four integers {x, y, xSize, ySize}, where x and y are the horizontal and vertical coordinates of the upper-left pixel in the region, and xSize and ySize are the horizontal and vertical sizes of the region.
If ROIwave is a one-dimensional wave, then the specification is taken from first four points along the ROW dimension. If ROIwave is a multi-dimensional wave, then the specification is taken from the first four points along the COLUMN dimension in ROW 0.
This scheme provides a flexible way to define an ROI: whether from a simple numeric wave or by using the description of an ROI returned by from a previous call to MMC_GetROI or MMC_GetMultiROI.
See Also
MMC_GetROI, MMC_GetMultiROI, Images in Igor Waves
MMC_GetROI /Q /Z /L=cameraLabel [destinationWave]
Returns a wave containing the ROI (Region Of Interest) for the specified camera.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /L = cameraLabel | A string containing the case-sensitive Micro-Manager label of the camera whose ROI is to be returned. If the /L flag is omitted, the operation returns the ROI of the currently active camera. | |
Parameters
| destinationWave | The optional name of a real, numeric wave that is to receive the ROI. If no destination wave is specified, the operation writes the ROI description to a wave called W_camROIs in the MMI data folder. If a non-numeric wave by that name already exists in the MMI data folder, the operation creates a uniquely named wave within the MMI data folder and writes the ROI data to that wave. | |
Details
The destination wave is redimensioned to 1 row and 4 columns and the description of the active ROI is placed in the first 4 columns of the first row (row 0, columns 0 to 3). The description of the ROI is returned as a sequence of four integers x, y, xSize, ySize, specifying the x (horizontal) and y (vertical) coordinates of the upper-left pixel in the region, followed by the horizontal and vertical sizes of the region.
If successful, the operation writes the name of the wave receiving the ROI description to the variable S_MMIresult in the MMI data folder.
See Also
MMC_SetROI, MMC_GetMultiROI, Images in Igor Waves
MMC_ClearROI /Q /Z
Sets the ROI for the active camera to the camera's full sensor and if successful, resets the circular buffer, clearing any images it may have held.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| None. | ||
See Also
MMC_SetROI, MMC_GetROI, MMC_GetMultiROI, Images in Igor Waves
MMC_IsMultiROISupported ( )
Reports whether the active camera supports the use of multiple simultaneous ROIs.
Parameters
| None. | ||
Returns
| 0 | The camera does not support multiple ROIs. | |
| 1 | The camera does support multiple ROIs. | |
See Also
MMC_GetMultiROI, MMC_SetMultiROI, MMC_IsMultiROIEnabled, Images in Igor Waves
MMC_IsMultiROIEnabled ( )
Reports whether the active camera is currently using multiple simultaneous ROIs.
Parameters
| None. | ||
Returns
| 0 | The camera is not currently using multiple ROIs. | |
| 1 | The camera is currently using multiple ROIs. | |
See Also
MMC_GetMultiROI, MMC_SetMultiROI, MMC_IsMultiROISupported, Images in Igor Waves
MMC_SetMultiROI /Q /Z ROIwave
Defines a set of ROIs to use in the active camera.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| ROIwave | The name of a real, numeric wave that describes the set of ROIs to be applied to the active camera. | |
Details
ROIwave must have at least 2 dimensions (ROWS and COLUMNS) and must have at least one row and four columns. If ROIwave contains multiple layers or chunks, only the first layer in the first chunk (LAYER = 0, CHUNK = 0), is read. Each row is interpreted as containing the description of one ROI, as a sequence of four integers in columns 0, 1, 2, and 3. The sequence is interpreted as x, y, xSize, and ySize, specifying the x (horizontal) and y (vertical) coordinates of the upper-left pixel in the region, followed by the horizontal and vertical sizes of the region.
See Also
MMC_GetMultiROI, MMC_IsMultiROISupported, MMC_IsMultiROIEnabled, Images in Igor Waves
MMC_GetMultiROI /Q /Z [ROIwave]
Returns a wave describing the set of ROIs in use in the active camera.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| ROIwave | The optional name of a real, numeric wave that is to receive the list of ROIs. If no destination wave is specified, the operation writes the ROI descriptions to a wave called W_camROIs in the MMI data folder. If a non-numeric wave already exists by that name in the MMI data folder, the operation creates a uniquely named wave within the MMI data folder and writes the ROI data to that wave. | |
Details
The destination wave is redimensioned to n rows and 4 columns where n is the number of ROIs currently set for the camera. The description of each ROI in the set is placed in the first 4 columns of consecutive rows (columns 0 to 3, in rows 0 to n-1). The description of each ROI is stored as a sequence of four integers x, y, xSize, ySize, specifying the x (horizontal) and y (vertical) coordinates of the upper-left pixel in the region, followed by the horizontal and vertical sizes of each region.
If successful, the operation also writes the name of the wave receiving the ROI descriptions to the variable S_MMIresult in the MMI data folder.
See Also
MMC_SetMultiROI, MMC_IsMultiROISupported, MMC_IsMultiROIEnabled, Images in Igor Waves
MMC_GetImageHeight ( )
Returns the vertical size (i.e. number of rows) of the image buffer, in pixels.
Parameters
| None. | ||
Returns
| A numeric value containing the integer height of one frame in the image-buffer, in pixels. | ||
See Also
MMC_GetImageWidth, Images in Igor Waves
MMC_GetImageWidth ( )
Returns the horizontal size (i.e. number of columns) of the image buffer, in pixels.
Parameters
| None. | ||
Returns
| A numeric value containing the integer width of one frame in the image-buffer, in pixels. | ||
See Also
MMC_GetImageHeight, Images in Igor Waves
MMC_GetImageBitDepth ( )
Returns the number of bits used to encode the intensity of each image pixel coming from the active camera.
Parameters
| None. | ||
Returns
| A numeric value containing the integer number of bits used to encode the intensity of each pixel returned by the active camera. | ||
Details
If the camera returns multiple color planes (ex. RGB or RGBA images), the returned value represents the bit-depth of each individual color-plane, not the aggregate bit-depth of all of the color-planes.
See Also
MMC_GetNumberOfComponents, https://micro-manager.org/apidoc/MMCore/latest/class_c_m_m_core.html
MMC_SetAutoShutter /Q /Z newState
Enables or disables automatic opening and closing of the active shutter when images are acquired.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| newState | A numeric value, either 0 or 1 where: | ||||
| |||||
See Also
MMC_SetShutterDevice, MMC_SetShutterOpen
MMC_SetShutterOpen /Q /Z /L=shutterLabel newState
Enables or disables automatic opening and closing of the active shutter when images are acquired.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /L = shutterDevice | Specifies the chosen shutter by a string containing the shutter's case-sensitive Micro-Manager device-label. If the /L flag is omitted, the operation sets the state of the currently active shutter. | |
Parameters
| newState | A numeric value, either 0 or 1 where 0 indicates the shutter should be closed (i.e. Open is False), and 1 indicates the shutter is to be opened (Open is True). | |
See Also
MMC_SetShutterDevice, MMC_SetAutoShutter
MMC_InitializeCircularBuffer /Q /Z
Resets the circular buffer, based on the size of images expected from the active camera.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Details
Micro-Manager's circular buffer is also initialized when an ROI is specified or changed.
See Also
MMC_GetCircularBufferSize, MMC_SetCircularBufferSize, MMC_ClearCircularBuffer
MMC_ClearCircularBuffer /Q /Z
Clears the contents of Micro-Manager's circular buffer, erasing any images that may be present.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Details
Micro-Manager's circular buffer is also cleared when an ROI is changed and when a acquisition-sequence is started.
See Also
MMC_GetCircularBufferSize, MMC_SetCircularBufferSize, MMC_InitializeCircularBuffer, MMC_StartSequenceAcquisition
MMC_GetCircularBufferSize ( )
Returns a numeric value reporting the amount of memory (in MB) has been allocated to Micro-Manager's circular buffer.
Parameters
| None. | ||
Returns
| A numeric value reporting the size of the circular buffer, as an integer number of MB. | ||
See Also
MMC_SetCircularBufferSize, MMC_InitializeCircularBuffer, MMC_ClearCircularBuffer
MMC_SetCircularBufferSize /Q /Z BuffSizeInMB
Sets the size of Micro-Manager's Circular Buffer, in MB.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| BuffSizeInMB | A integer value specifying, in MB, the new size of Micro-Manager's Circular Buffer. | |
See Also
MMC_GetCircularBufferSize, MMC_InitializeCircularBuffer, MMC_ClearCircularBuffer
MMC_IsSequenceRunning ( )
Returns a numeric value indicating whether Micro-Manager is currently executing a sequential acquisition.
Parameters
| None. | ||
Returns
| A numeric value containing the integer number of bits used to encode the intensity of each pixel returned by the active camera. | ||
Details
If the camera returns multiple color planes (ex. RGBA), the returned value represents the bit-depth of each individual color-plane, not the aggregate bit-depth of all of the color-planes.
"This value should be used only as a guideline - it does not guarantee that image buffer will contain only values from the returned dynamic range." [From Micro-Manager API.]
See Also
https://micro-manager.org/apidoc/MMCore/latest/class_c_m_m_core.html
MMC_PrepareSequenceAcquisition /Q /Z /L=cameraLabel
Prepares the camera for starting a sequential acquisition.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /L = cameraLabel | An optional string containing the case-sensitive Micro-Manager label of the specified camera. If the /L flag is omitted, then the operation prepares the currently active camera for sequential acquisition. | |
See Also
MMC_StartSequenceAcquisition, MMC_StopSequenceAcquisition
MMC_StartSequenceAcquisition /Q /Z /N=imageCount /A /O /CLRO=colorOrder /MD=mode /I=imageInterval
Launches a sequential acquisition.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | ||||||||||
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | ||||||||||
| /N = imageCount | Specifies the number of images to be acquired in the sequence. If omitted, MMI starts acquisition of a continuous sequence, overwriting the previous image as each new image is acquired. | ||||||||||
| /A | (Valid only when used together with /N flag.) 'Append' mode instructs MMI to append acquired images to the bound streaming wave, rather than overwriting the previously acquired image. MMI appends acquired images as either consecutive layers (in the case of 2d images), or as consecutive chunks (in the case of 3d images, such as RGB or RGBA). | ||||||||||
| /O | 'Overflow' instructs Micro-Manager to stop acquisition if its circular buffer fills. | ||||||||||
| /CLRO = colorOrder | Setting the color-order flag overrides MMI's default color-ordering when moving the retrieved image to the destination wave. The color-order flag applies only when working with multi-layer color (ex. RGB, RGBA, BGR, BGRA) images and is ignored when working with grayscale (monochrome) images. colorOrder is a case-insensitive string of three or four characters where the first three characters are either "rgb" or "bgr". MMI currently ignores any fourth letter (ex. RGBA) in the string. | ||||||||||
| /MD = mode | Specifies how MMI should handle the metadata for each acquired image. Modes 1 and 2 are valid only if a text wave was specified to receive the metadata, via a previous call to MMI_BindMetaDataWave. | ||||||||||
| |||||||||||
| /I | Specifies the interval (in milliseconds) between acquisition of consecutive images. If omitted, the interval is set to the current exposure time of the current camera. | ||||||||||
Details
This operation must be preceded by a call to MMI_BindSequenceWave to notify MMI which wave is to receive the incoming image stream.
See Also
MMI_BindSequenceWave, MMI_BindMetaDataWave, MMC_StopSequenceAcquisition, MMC_SetCircularBufferSize, Working with Color Images
MMC_StopSequenceAcquisition /Q /Z /W /L=cameraLabel /TO=timeOut
Halts a previously started sequential acquisition.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /W | 'Wait' mode instructs MMI to monitor Micro-Manager (for up to 5 seconds), after issuing the 'stop sequence acquisition' command, and not to return to Igor until Micro-Manager reports that sequential acquisition is no longer running. If Micro-Manager fails to report the of sequential acquisition within the 5 second window, MMI returns a time-out error, MMIERR_MMTIMEOUT. | |
| /L = cameraLabel | Specifies the Micro-Manager label of the camera whose sequential acquisition is to be halted. MMI currently supports acquisition from only one camera at a time. | |
| /TO = timeOut | Specifies the maximum amount of time, in seconds, that MMI should wait for Micro-Manager to halt acquisition. MMI uses the timeOut specification only when the /W (wait) flag is also specified. The timeOut parameter must be between 0 and 2,147,483 seconds. If no timeOut period is specified, the default is 5 seconds. | |
See Also
MMC_StartSequenceAcquisition, MMC_IsSequenceRunning
MMI_BindImageWave /Q /Z /U imageWave
Defines which wave is to receive single acquired images.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /U | Unlock wave, if needed, prior to assigning it for sequential acquisition. If the /U flag is omitted and the wave is locked, MMI will raise an error, as it will be unable to adjust the wave's data-type or dimensions to match the image expected from the camera. | |
Parameters
| imageWave | The real, numeric wave which is to receive the images. Free waves may not be bound as image waves. | |
Details
If imageWave is not large enough to accept one frame from the currently active camera, MMI_BindImageWave attempts to redimension the wave to accept one frame. If imageWave is larger than one frame, its dimensions are not changed. The same wave may be bound by both MMI_BindImageWave and MMI_BindSequenceWave.
Calling MMI_BindImageWave tells Igor that the wave is 'in use', in the same way a wave is 'in use' when it is displayed in a graph or a table. Accordingly, such a bound wave cannot be deleted until it is released by a subsequent call to MMI_ReleaseImageWave or MMI_Reset.
See Also
MMI_ReleaseImageWave, MMC_SnapImage, MMI_GrabImage, MMI_BindSequenceWave
MMI_ReleaseImageWave /Q /Z
Releases a wave previously bound for acquiring single images.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Details
No error occurs when MMI_ReleaseImageWave is called if MMI_BindImageWave has not yet been called, or if no image-wave is currently bound.
See Also
MMI_BindImageWave, MMI_BindSequenceWave
MMI_BindSequenceWave /Q /Z /F /U sequenceWave
Defines which wave is to receive sequentially acquired (streamed) images.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /F | 'Freeze' wave dimensions as they are, preventing MMI from adjusting the wave's dimensions to accept exactly one frame (image) from the currently assigned camera. This flag is useful if you have prepared a wave to accept multiple images, ex. in preparing to call MMC_StartSequenceAcquisition with the /A (Append) flag. | |
| /U | Unlock wave, if needed, prior to assigning it for sequential acquisition. If the /U flag is omitted and the wave is locked, MMI will raise an error, as it will be unable to adjust the wave's data-type or dimensions to match the images expected from the camera. | |
Parameters
| sequenceWave | The numeric wave which is to receive the sequence (stream) of images. MMI resets the numeric type and the dimensions of the wave to match the size of the images expected from the active camera. Free waves may not be bound as sequence waves. | |
Details
The same wave may be bound for both snapping single images and for sequential (streaming) acquisition, by specifying the same wave when calling MMI_BindImageWave and MMI_BindSequenceWave.
Calling MMI_BindSequenceWave tells Igor that the wave is 'in use', in the same way a wave is 'in use' when it is displayed in a graph or a table. Accordingly, such a bound wave cannot be deleted until it is released by a subsequent call to MMI_ReleaseSequenceWave or MMI_Reset.
See Also
MMI_ReleaseSequenceWave, MMC_StartSequenceAcquisition, MMC_StopSequenceAcquisition
MMI_ReleaseSequenceWave /Q /Z
Releases a wave previously bound for acquiring image-sequences.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Details
No error occurs when MMI_ReleaseSequenceWave is called if MMI_BindSequenceWave has not yet been called, or if no sequence-wave is currently bound.
See Also
MMI_BindSequenceWave, MMI_ReleaseImageWave
MMI_DoUpdate /Q /Z
Checks if the bound sequence-wave has been updated by acquisition of a new image and immediately calls DoUpdate if the wave has been updated.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Details
If you run an Igor function while MMI is running a sequential acquisition, Igor does not pre-empt your Igor function to give MMI an opportunity to mark its bound sequence-wave as modified. In this circumstance, MMI will not be able to alert Igor about the modified sequence-wave until your code gives MMI that opportunity. You have several coding options to give MMI a chance to check for changes in the sequence-wave.
The simplest option is for your code to call DoXOPIdle, which gives all running XOPs a chance to run. This may however suspend your code for more time than desirable. Your second, more focused option is to call MMI_DoUpdate. This function asks MMI to call DoUpdate only if the sequence-wave has been modified. Calling MMI_DoUpdate permits your code to bypass other XOPs (if any) from running their IDLE event processing. Your third and even more focused option is to call MMI_GetUpdateState, which will report whether MMI's sequence-wave has been modified, without automatically calling DoUpdate. The value returned by MMI_GetUpdateState allows your code to decide which, if any, windows to update and when to do so, based on your requirements.
See Also
MMI_GetUpdateState, DoUpdate, DoXOPidle
MMI_GetUpdateState ( )
Returns a numeric value; zero if the sequence-wave has not been updated since the last call, or a non-zero value if the sequence-wave has been updated. This function does not call DoUpdate, leaving to the caller all decisions about which windows to update and when to update them.
Parameters
| (None) | ||
Details
If you run an Igor function while MMI is running a sequential acquisition, Igor does not pre-empt your Igor function to give the MMI XOP an opportunity to mark its bound sequence-wave as modified. In this circumstance, MMI will not be able to alert Igor about the modified sequence-wave until your code gives MMI that opportunity. You have several coding options to give the MMI XOP a chance to check for changes in the sequence-wave.
The simplest option is for your code to call DoXOPIdle, which gives all running XOPs a chance to run. This may however suspend your code for more time than desirable. Your second, more focused option is to call MMI_DoUpdate. It calls only the MMI XOP, asking it to call DoUpdate only if the sequence-wave has been modified. Calling MMI_DoUpdate permits your code to bypass other XOPs (if any) from running their IDLE event processing. Your third and yet more focused option is to call MMI_GetUpdateState, which will report whether the sequence-wave has been modified, without automatically calling DoUpdate. The value returned by MMI_GetUpdateState allows your code to decide which, if any, windows to update and when to do so, based on your requirements.
See Also
MMI_DoUpdate, DoUpdate, DoXOPidle
MMI_BindImageProcessor /Q /Z functionName
Defines a user-provided Igor function which MMI will call after acquisition of each single (non-streaming) image.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| functionName | A string containing the name of the user-provided Igor function that is to be called each time an image is acquired. | |
Details
The named function must accept five parameters, and must return a real, double-precision value, as shown here. The function should return 0 under normal circumstances and return other values only to report errors.
Function MyImageProcessor (wave imgWave, variable OffRow, variable OffCol, variable OffLayer, variable OffChunk)
<insert your processing code here>
return 0
End
The function's first parameter must be a reference to a numeric wave. When MMI calls the specified function, this parameter will contain a reference to the wave that received the newly acquired image.
The function's second through fifth parameters indicate where in the recipient wave the newly acquired image was stored. When the recipient wave holds only one image, these parameters will all be zero. If, however, multiple images are being acquired into a single wave via calls to MMI_GrabImage, then the parameters form a vector within the wave to the origin (top, left corner) of the newly acquired image.
To halt MMI calls to the bound function upon acquisition of single images, call the operation MMI_ReleaseImageProcessor.
See Also
MMI_ReleaseImageProcessor, MMC_SnapImage, MMI_GrabImage, MMC_GetImage
MMI_ReleaseImageProcessor /Q /Z
Instructs MMI to stop calling the user-provided Igor function previously defined for execution following acquisition of each single image.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Details
No error occurs when MMI_ReleaseImageProcessor is called if MMI_BindImageProcessor has not yet been called, or if no function is currently bound.
See Also
MMI_BindSequenceProcessor /Q /Z functionName
Tells MMI which user-provided function is to be called to process images relayed to Igor during sequential acquisition.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| functionName | A string containing the name of the user-provided Igor function used to process images acquired during sequential acquisition. | |
Details
The named function must accept five parameters, and must return a real, double-precision value, as shown here. The function should return 0 under normal circumstances and return other values only to reprot errors.
Function MySequenceProcessor (wave imgWave, variable OffRow, variable OffCol, variable OffLayer, variable OffChunk)
<insert your processing code here>
return 0
End
The function's first parameter must be a reference to a numeric wave. When MMI calls the specified function, this parameter will contain a reference to the wave that received the newly acquired image.
The function's second through fifth parameters indicate where in the recipient wave the newly acquired image was stored. When the recipient wave holds only one image, these parameters will all be zero. If, however, multiple images are being acquired into a single wave via calls to MMI_GrabImage, then the parameters form a vector within the wave to the origin (top, left corner) of the newly acquired image.
To halt MMI calls to the bound function upon acquisition of sequential images, call the operation MMI_ReleaseSequenceProcessor.
Note that MMI calls the specified processor-function as part of its response to the 'IDLE message' sent from Igor. This design carries several important implications, especially when acquiring sequentially at high-frame rates.
The sequence processor cannot process frames at rates faster than the rate at which MMI receives IDLE messages from Igor. Thus MMI cannot guarantee that the processor function will be able to process every frame acquired by Micro-Manager. You may want to consider carefully adjusting the frequency with which Igor passes the IDLE message to MMI to help 'tune' performance of your processor function. See help on Igor's SetIdlePeriod operation for more details.
The processor-function runs on Igor's main thread, which is blocked from performing other tasks while the processor function is running. Thus while your processor function is running, Igor cannot update other windows nor respond to user input from the mouse or keyboard. Further, if the sequence processor-function hangs or falls into an infinite loop, Igor will hang.
Because the processor-function operates directly on the wave bound for receiving sequentially acquired images, that wave is unavailable to receive new images so long as the processor function is running. In other words, MMI cannot receive new sequential images from Micro-Manager so long as the processor-function is running.
MMI provides the SequenceRelayDivisor mechanism to throttle the rate at which incoming sequential images are relayed to Igor's bound wave, and thus the rate at which the sequential-processor function is called. See MMI_SetSequenceRelayDivisor and MMI_GetSequenceRelayDivisor for more details.
See Also
MMI_ReleaseSequenceProcessor, MMI_SetSequenceRelayDivisor, SetIdlePeriod
MMI_ReleaseSequenceProcessor /Q /Z
Tells MMI that no user-provided function is to be called to process images acquired during sequential acquisition.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
See Also
MMI_BindMetaDataWave /Q /Z /U metaDataWave
Defines a user-provided Igor text wave into which MMI will write the meta-data of sequentially acquired images.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /U | Unlock wave, if needed, prior to assigning it for sequential acquisition. If the /U flag is omitted and the wave is locked, MMI will raise an error, as it will be unable to adjust the wave's dimensions to match the number of images expected from the camera. | |
Parameters
| metaDataWave | The text wave which is to receive the meta-data for sequentially-acquired images. Free waves may not be bound as meta-data waves. | |
Details
The meta-data 'mode' dictates which images' meta-data are saved to the wave, and is set by the /MD flag when calling MMC_StartSequenceAcquisition. If metadata are to be saved, then MMI_BindMetaDataWave must be called before MMC_StartSequenceAcquisition.
Calling MMI_BindMetaDataWave tells Igor that the wave is 'in use', in the same way a wave is 'in use' when it is displayed in a graph or a table. Accordingly, such a bound wave cannot be deleted until it is released by a subsequent call to MMI_ReleaseMetaDataWave or MMI_Reset.
See Also
MMI_ReleaseMetaDataWave, MMC_StartSequenceAcquisition
MMI_ReleaseMetaDataWave /Q /Z
Releases a wave previously bound for acquiring metadata for image-sequences.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Details
No error occurs when MMI_ReleaseMetaDataWave is called if MMI_BindMetaDataWave has not yet been called, or if no metadata wave is currently bound.
See Also
MMI_WaitForSequenceCompletion /Q /Z /I=intervalMS /T=timeoutSecs
Waits until Micro-Manager has no sequential-acquisition underway.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
| /I = intervalMS | Specifies how long (in milliseconds) the operation should sleep between checking if a sequential acquisition is underway. If no user-defined interval is defined, MMI will use a default interval of 5 ms between checks. | |
| /T = timeOutSecs | Specifies the time-out period in seconds, i.e. the maximum period of time the operation should continue checking for sequential acquisition to stop. If sequential acqusition has not halted by the end of the time-out period, the operation will return an error code. If no time-out interval is specified, the operation will wait indefinitely. See warnings below. | |
Details
Call this operation with care! This operation runs on Igor's main user-thread and can lock that thread, freezing Igor's user-interface, especially if a long time-out period (or none) is defined. Consider instead calling the function MMC_IsSequenceRunning from your own Igor procedure.
See Also
State Device Control
MMC_GetState (deviceLabel)
Returns the current numeric state of the specified state-device.
Parameters
| deviceLabel | A string containing the case sensitive Micro-Manager label assigned to the specified state-device. | |
Returns
| A real, numeric value containing the operational state of the specified device. | ||
See Also
MMC_LoadDevice, MMC_SetState, MMC_SetStateLabel
MMC_DefineStateLabel /Q /Z deviceLabel, stateID, stateLabel
Defines a state-label (a string) for the specified state of the specified device.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case sensitive Micro-Manager label assigned to the specified state-device. | |
| stateID | A real, numeric value specifying the operational state to be linked to the string specified by stateLabel. | |
| stateLabel | A string containing the case sensitive Micro-Manager label linked to the operational state identified by stateID. | |
Details
| The specified stateLabel can provide a convenient or user-friendly nickname for the operational state specified by the often more abstract numeric stateID. | ||
See Also
MMC_GetState, MMC_SetStateLabel
MMC_SetState /Q /Z deviceLabel, newStateID
Sets the operational state of the specified device using the specified numeric identifier.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case sensitive Micro-Manager label assigned to the specified state-device. | |
| newStateID | A real, numeric value specifying the chosen operational state of the device. | |
Details
The specified stateLabel can provide a convenient or user-friendly nickname for the operational state specified by the often more abstract numeric stateID.
See Also
MMC_GetState, MMC_SetStateLabel
MMC_SetStateLabel /Q /Z deviceLabel, newStateLabel
Sets the operational state of the specified device using the specified label-string.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case sensitive Micro-Manager label assigned to the specified state-device. | |
| newStateLabel | A string specifying the state-label assigned to the chosen operational state for this device. | |
Details
The specified stateLabel can provide a convenient or user-friendly nickname for the operational state specified by the often more abstract numeric stateID.
See Also
MMC_GetState, MMC_DefineStateLabel, MMC_SetState
Hub and Peripheral Devices
MMC_GetParentLabel (childLabel)
Identifies the 'parent' of a Micro-Manager device by returning the label of the parent-device.
Parameters
| deviceLabel | A string containing the case sensitive Micro-Manager label assigned to the device whose parent-device is sought. | |
Returns
| A string containing the case-sensitive Micro-Manager label of the device previously set as the parent of the specified device. | ||
See Also
MMC_SetParentLabel /Q /Z deviceLabel, parentLabel
Sets the parent hub of the specified device, linking the device to the specified hub.
Flags
| /Q | 'Quiet' mode instructs MMI not to write internal errors to the history area. | |
| /Z | 'Suppress' mode instructs MMI to return normally to Igor, even when an error occurs. When the /Z flag is used, it is left to the user to check for errors, reported by non-zero values in the numeric variable V_MMIresult. If an error occurs, an error message is written to the global string variable S_MMIresult. | |
Parameters
| deviceLabel | A string containing the case sensitive Micro-Manager label assigned to the device whose parent-device is being set. | |
| parentHubLabel | A string containing the case sensitive Micro-Manager label assigned to the parent-device. | |