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 timer.
Name  | 
TimerStatus[TimerSelector]  | 
Category  | 
|
Interface  | 
Enumeration  | 
Access  | 
Read  | 
Unit  | 
-  | 
Visibility  | 
Expert  | 
Values  | 
TimerIdle  | 
Standard  | 
SFNC  | 
Availability uEye+  | 
  | 
Availability uEye  | 
-  | 
Values description
•TimerIdle: The timer is not enabled. To enable the timer, choose a TimerTriggerSource ≠ "Off".
•TimerTriggerWait: The timer is waiting to be started by a trigger on TimerTriggerSource.
•TimerActive: The timer is counting for the specified TimerDuration or as long as the TimerTriggerActivation is valid ("LevelHigh" or "LevelLow").
•TimerCompleted: The timer has reached the TimerDuration.
Code example
C++
// Before accessing TimerStatus, make sure TimerSelector is set correctly
// Set TimerSelector to "Timer0" 
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("TimerSelector")->SetCurrentEntry("Timer0");
// Determine the current entry of TimerStatus
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("TimerStatus")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of TimerStatus
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("TimerStatus")->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 TimerStatus, make sure TimerSelector is set correctly
// Set TimerSelector to "Timer0" 
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("TimerSelector").SetCurrentEntry("Timer0");
// Determine the current entry of TimerStatus
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("TimerStatus").CurrentEntry().SymbolicValue();
// Get a list of all available entries of TimerStatus
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("TimerStatus").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 TimerStatus, make sure TimerSelector is set correctly
# Set TimerSelector to "Timer0" (str) 
nodeMapRemoteDevice.FindNode("TimerSelector").SetCurrentEntry("Timer0")
# Determine the current entry of TimerStatus (str)
value = nodeMapRemoteDevice.FindNode("TimerStatus").CurrentEntry().SymbolicValue()
# Get a list of all available entries of TimerStatus
allEntries = nodeMapRemoteDevice.FindNode("TimerStatus").Entries()
availableEntries = []
for entry in allEntries:
    if (entry.AccessStatus() != ids_peak.NodeAccessStatus_NotAvailable
            and entry.AccessStatus() != ids_peak.NodeAccessStatus_NotImplemented):
        availableEntries.append(entry.SymbolicValue())