IDS Peak comfortSDK, genericSDK, IPL, and AFL developer manuals are external documents. Please contact us if you need them.
Returns the current status of the counter.
Name |
CounterStatus[CounterSelector] |
Category |
|
Interface |
Enumeration |
Access |
Read |
Unit |
- |
Visibility |
Expert |
Values |
CounterIdle CounterTriggerWait CounterActive CounterCompleted CounterOverflow |
Standard |
SFNC |
Availability uEye+ |
|
Availability uEye |
- |
Values description
•CounterIdle: The counter is disabled. To enable the counter, perform a counter reset.
•CounterTriggerWait: The counter is waiting to be started by a trigger on CounterTriggerSource or by the CounterReset command.
•CounterActive: The counter is counting for the specified CounterDuration.
•CounterCompleted: The counter has reached the CounterDuration count and is disabled. To enable the counter again, perform a counter reset.
•CounterOverflow: The counter has reached its maximum possible count.
Code example
C++
// Before accessing CounterStatus, make sure CounterSelector is set correctly
// Set CounterSelector to "Counter0"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("CounterSelector")->SetCurrentEntry("Counter0");
// Determine the current entry of CounterStatus
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("CounterStatus")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of CounterStatus
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("CounterStatus")->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 CounterStatus, make sure CounterSelector is set correctly
// Set CounterSelector to "Counter0"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("CounterSelector").SetCurrentEntry("Counter0");
// Determine the current entry of CounterStatus
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("CounterStatus").CurrentEntry().SymbolicValue();
// Get a list of all available entries of CounterStatus
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("CounterStatus").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 CounterStatus, make sure CounterSelector is set correctly
# Set CounterSelector to "Counter0" (str)
nodeMapRemoteDevice.FindNode("CounterSelector").SetCurrentEntry("Counter0")
# Determine the current entry of CounterStatus (str)
value = nodeMapRemoteDevice.FindNode("CounterStatus").CurrentEntry().SymbolicValue()
# Get a list of all available entries of CounterStatus
allEntries = nodeMapRemoteDevice.FindNode("CounterStatus").Entries()
availableEntries = []
for entry in allEntries:
if (entry.AccessStatus() != ids_peak.NodeAccessStatus_NotAvailable
and entry.AccessStatus() != ids_peak.NodeAccessStatus_NotImplemented):
availableEntries.append(entry.SymbolicValue())