IDS Peak comfortSDK, genericSDK, IPL, and AFL developer manuals are external documents. Please contact us if you need them.
Selects the user set that has to be loaded, saved or configured. User sets do not include the LUT settings.
Name |
UserSetSelector |
Category |
|
Interface |
Enumeration |
Access |
Read/Write |
Unit |
- |
Visibility |
Beginner |
Values |
Default HighSpeed Linescan LinescanHighSpeed LongExposure UserSet0 UserSet1 |
Standard |
SFNC |
Availability uEye+ |
|
Availability uEye |
|
Values description
•Default: Selects the default setting. Loading the user set "Default" guarantees a state where a continuous acquisition is started that uses only the mandatory features. It is compatible with the most applications.
> Sets the SensorOperationMode to "Default".
•HighSpeed: Selects the "HighSpeed" user set. The HighSpeed mode allows higher frame rates, but the image quality is not quite as good as in the default mode. This function is only supported by the following cameras: U3-313x and U3-314x.
> Sets the SensorOperationMode to "Default".
•Linescan: Selects the "Linescan" user set. It is the optimized setting for line scan mode without line loss. The exposure time is set to its minimum. Onboard Debayering is not available. The scan line is vertically centered and the default image height is set to 1024. The SensorHeight defines the height of the scan line and is set to "1" for monochrome cameras and "2" for color cameras.
> Sets the SensorOperationMode to "Linescan". Depending on the further camera settings it may be necessary to increase the value of FrameAbortTimeout to avoid incomplete images. This feature is only supported by uEye+ cameras (GV and U3 models).
•LinescanHighSpeed: Selects the "LinescanHighSpeed" user set. It is the speed optimized setting for line scan mode and only available for monochrome cameras. Lines may be lost between two frames. The exposure time is set to its minimum. Onboard Debayering is not available. The scan line is vertically centered and the default image height is set to 1024. The SensorHeight defines the height of the scan line and is set to "1"
> Sets the SensorOperationMode to "LinescanSensor". This feature is only supported by the following monochrome cameras: GV-524x, GV-525x.
•LongExposure: Selects the "LongExposure" user set. It is the optimized setting for long exposure mode. The PixelFormat is set to a bit depth higher than 8 bit, if available, and the source gain of the sensor is adjusted.
> Sets the SensorOperationMode to "LongExposure". This feature is only supported by uEye+ cameras (GV and U3 models).
•UserSet0: Selects the user defined setting "UserSet0".
•UserSet1: Selects the user defined setting "UserSet1". This feature is only supported by uEye+ cameras (GV and U3 models).
Loading a user set can affect the availability and behavior of multiple camera features. The following parameters are only available if a user set for SensorOperationMode "Linescan" has been loaded: •"LineTrigger" and "LineTriggerMissed" signals as source for timers and counters at the features TimerTriggerSource, CounterTriggerSource, CounterEventSource and CounterResetSource. •"FrameActive" as source for the PWM and output lines at the features PWMTriggerSource and LineSource. •AcquisitionLineRate for acquisitions with untriggered lines. •TriggerSelector values "LineStart" and "FrameStart". The SensorOperationMode "Linescan" is subject to the following restrictions: •ExposureAuto and GainAuto are not available. •BinningHorizontal and BinningVertical are not available. •DecimationVertical is not available. •Debayered PixelFormats "RGB8", "BGR8", "RGB10p32" and "BGR10p32" are not available. •TriggerSelector is limited to the values "LineStart" and "FrameStart". |
Code example
C++
// Determine the current entry of UserSetSelector
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("UserSetSelector")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of UserSetSelector
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("UserSetSelector")->Entries();
std::vector<std::shared_ptr<peak::core::nodes::EnumerationEntryNode>> availableEntries;
for(const auto & entry : allEntries)
{
if ((entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotAvailable)
&& (entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotImplemented))
{
availableEntries.emplace_back(entry);
}
}
// Set UserSetSelector to "Default"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("UserSetSelector")->SetCurrentEntry("Default");
C#
// Determine the current entry of UserSetSelector
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("UserSetSelector").CurrentEntry().SymbolicValue();
// Get a list of all available entries of UserSetSelector
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("UserSetSelector").Entries();
List<string> availableEntries = new List<string>();
for(int i = 0; i < allEntries.Count(); ++i)
{
if ((allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotAvailable)
&& (allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotImplemented))
{
availableEntries.Add(allEntries[i].SymbolicValue());
}
}
// Set UserSetSelector to "Default"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("UserSetSelector").SetCurrentEntry("Default");
Python
# Determine the current entry of UserSetSelector (str)
value = nodeMapRemoteDevice.FindNode("UserSetSelector").CurrentEntry().SymbolicValue()
# Get a list of all available entries of UserSetSelector
allEntries = nodeMapRemoteDevice.FindNode("UserSetSelector").Entries()
availableEntries = []
for entry in allEntries:
if (entry.AccessStatus() != ids_peak.NodeAccessStatus_NotAvailable
and entry.AccessStatus() != ids_peak.NodeAccessStatus_NotImplemented):
availableEntries.append(entry.SymbolicValue())
# Set UserSetSelector to "Default" (str)
nodeMapRemoteDevice.FindNode("UserSetSelector").SetCurrentEntry("Default")