IDS Peak comfortSDK, genericSDK, IPL, and AFL developer manuals are external documents. Please contact us if you need them.
Returns the device's access status at the moment of the last execution of the DeviceUpdateList command. This value only changes on execution of the DeviceUpdateList command. Corresponds to the DEVICE_INFO_ACCESS_STATUS command of "DevGetInfo" function.
Name |
DeviceAccessStatus |
Category |
|
Interface |
Enumeration |
Access |
Read |
Unit |
- |
Visibility |
Expert |
Values |
Unknown ReadWrite ReadOnly NoAccess Busy OpenReadWrite OpenReadOnly |
Standard |
GenTL SFNC |
Availability uEye+ |
|
Availability uEye |
|
Values description
•Unknown: Access status is not known to the Producer.
•ReadWrite: Full access.
•ReadOnly: Read-only access.
•NoAccess: The device is not available for connecting.
•Busy: The device is already opened by another entity.
•OpenReadWrite: Open in Read/Write mode by this GenTL host.
•OpenReadOnly: Open in Read access mode by this GenTL host.
Code Example
C++
// Determine the current entry of DeviceAccessStatus
std::string value = nodeMapLocalDevice->FindNode<peak::core::nodes::EnumerationNode>("DeviceAccessStatus")->CurrentEntry()->SymbolicValue();// Get a list of all available entries of DeviceAccessStatus
auto allEntries = nodeMapLocalDevice->FindNode<peak::core::nodes::EnumerationNode>("DeviceAccessStatus")->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#
// Determine the current entry of DeviceAccessStatus
string value = nodeMapLocalDevice.FindNode<peak.core.nodes.EnumerationNode>("DeviceAccessStatus").CurrentEntry().SymbolicValue();// Get a list of all available entries of DeviceAccessStatus
allEntries = nodeMapLocalDevice.FindNode<peak.core.nodes.EnumerationNode>("DeviceAccessStatus").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
# Determine the current entry of DeviceAccessStatus (str)
value = nodeMapLocalDevice.FindNode("DeviceAccessStatus").CurrentEntry().SymbolicValue()# Get a list of all available entries of DeviceAccessStatus
allEntries = nodeMapLocalDevice.FindNode("DeviceAccessStatus").Entries()
availableEntries = []
for entry in allEntries:
if (entry.AccessStatus() != peak.NodeAccessStatus_NotAvailable
and entry.AccessStatus() != peak.NodeAccessStatus_NotImplemented):
availableEntries.append(entry.SymbolicValue())