IDS Peak comfortSDK, genericSDK, IPL, and AFL developer manuals are external documents. Please contact us if you need them.
Selects the target operation for the selected file in the camera. The corresponding file is defined by the FileSelector.
This operation is executed when the FileOperationExecute feature is called.
Name |
FileOperationSelector[FileSelector] |
Category |
|
Interface |
Enumeration |
Access |
Read/Write |
Unit |
- |
Visibility |
Guru |
Values |
Open Close Read Write Delete |
Standard |
SFNC |
Availability uEye+ |
|
Availability uEye |
|
Values description
•Open: Opens the selected file in the camera. The access mode in which the file is opened is selected by FileOpenMode.
•Close: Closes the selected file in the camera.
•Read: Reads data from the camera storage into the FileAccessBuffer. The data is read from the file with relative offset FileAccessOffset and has the length FileAccessLength.
•Write: Writes data from FileAccessBuffer into the camera storage. The written data has the length FileAccessLength. For this operation, FileAccessOffset is not available. The complete file must be written all at once.
•Delete: Deletes the selected file in the camera. This operation does not remove the associated FileSelector entry.
Code example
C++
// Determine the current entry of FileOperationSelector
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("FileOperationSelector")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of FileOperationSelector
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("FileOperationSelector")->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 FileOperationSelector to "Open"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("FileOperationSelector")->SetCurrentEntry("Open");
C#
// Determine the current entry of FileOperationSelector
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("FileOperationSelector").CurrentEntry().SymbolicValue();
// Get a list of all available entries of FileOperationSelector
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("FileOperationSelector").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 FileOperationSelector to "Open"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("FileOperationSelector").SetCurrentEntry("Open");
Python
# Determine the current entry of FileOperationSelector (str)
value = nodeMapRemoteDevice.FindNode("FileOperationSelector").CurrentEntry().SymbolicValue()
# Get a list of all available entries of FileOperationSelector
allEntries = nodeMapRemoteDevice.FindNode("FileOperationSelector").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 FileOperationSelector to "Open" (str)
nodeMapRemoteDevice.FindNode("FileOperationSelector").SetCurrentEntry("Open")