Please enable JavaScript to view this site.

IDS peak 2.8.0 / uEye+ firmware 3.33

Returns the current control mode of the device. This value only changes on execution of the DeviceUpdateList command. See also DeviceAccessStatus, which gives a similar transport layer independent status.

Name

GevDeviceCurrentControlMode[DeviceSelector]

Category

DeviceEnumeration

Interface

Enumeration

Access

Read

Unit

-

Visibility

Expert

Values

Unknown

Open

ControlAccess

ExclusiveAccess

NoAccess

Standard

GenTL SFNC

Availability uEye+

icon-gev

Availability uEye

-

Values description

Unknown: The current control mode is unknown to the GenTL Producer.

Open: The device is open for control or exclusive access.

ControlAccess: The device is controlled by another host. But switchover or read-only access is possible.

ExclusiveAccess: The device is under exclusive access by a host and cannot be accessed by another one.

NoAccess: The device cannot be accessed. For example, it may be a GigE Vision device on a subnet different from the interface.

Code Example

C++

// Before accessing GevDeviceCurrentControlMode, make sure DeviceSelector is set correctly
// Set DeviceSelector to 0
nodeMapInterface->FindNode<peak::core::nodes::IntegerNode>("DeviceSelector")->SetValue(0);
// Determine the current entry of GevDeviceCurrentControlMode
std::string value = nodeMapInterface->FindNode<peak::core::nodes::EnumerationNode>("GevDeviceCurrentControlMode")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of GevDeviceCurrentControlMode
auto allEntries = nodeMapInterface->FindNode<peak::core::nodes::EnumerationNode>("GevDeviceCurrentControlMode")->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);
  }
}
 

C#

// Before accessing GevDeviceCurrentControlMode, make sure DeviceSelector is set correctly
// Set DeviceSelector to 0
nodeMapInterface.FindNode<peak.core.nodes.IntegerNode>("DeviceSelector").SetValue(0);
// Determine the current entry of GevDeviceCurrentControlMode
string value = nodeMapInterface.FindNode<peak.core.nodes.EnumerationNode>("GevDeviceCurrentControlMode").CurrentEntry().SymbolicValue();
// Get a list of all available entries of GevDeviceCurrentControlMode
allEntries = nodeMapInterface.FindNode<peak.core.nodes.EnumerationNode>("GevDeviceCurrentControlMode").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());
  }
}
 

Python

# Before accessing GevDeviceCurrentControlMode, make sure DeviceSelector is set correctly
# Set DeviceSelector to 0 (int)
nodeMapInterface.FindNode("DeviceSelector").SetValue(0)
# Determine the current entry of GevDeviceCurrentControlMode (str)
value = nodeMapInterface.FindNode("GevDeviceCurrentControlMode").CurrentEntry().SymbolicValue()
# Get a list of all available entries of GevDeviceCurrentControlMode
allEntries = nodeMapInterface.FindNode("GevDeviceCurrentControlMode").Entries()
availableEntries = []
for entry in allEntries:
  if (entry.AccessStatus() != peak.NodeAccessStatus_NotAvailable
          and entry.AccessStatus() != peak.NodeAccessStatus_NotImplemented):
      availableEntries.append(entry.SymbolicValue())
 
 

© 2024 IDS Imaging Development Systems GmbH