PLCnext API Documentation 25.0.2.69
Classes | Enumerations | Functions
Arp::System::Commons::Services::Io Namespace Reference

Namespace for services to access the filesystem More...

Classes

class  FileSystemEntry
 This struct is used by file operations to reading of the file system entries. More...
 
class  FileSystemTraitsEntry
 This struct is used by file operations reading file informations from device. More...
 
class  IDirectoryService
 Provides common file directory operations. More...
 
class  IDirectoryService2
 Provides common file directory operations for several directories in a single call. More...
 
class  IFileService
 Provides common file operations for reading and writing files as well as deleting/moving/copying files on the device. More...
 
class  IFileService2
 Provides common file operations for several files in a single call. More...
 
class  IFileSystemInfoService
 A generic service to retrieve file system infos. More...
 
class  ReadFileData
 Contains output information and data of a file to read More...
 
class  ReadFileInfo
 Contains all input information to read a file More...
 
class  SpaceInfo
 This struct is used by file operations to reading of the space informations. More...
 
class  TraitItem
 Specifies a file trait item More...
 
class  WriteFileData
 Contains all input information and data of a file to write More...
 

Enumerations

enum class  FileSystemError : int32 {
  None = 0 , Unknown = 1 , InvalidPath = 2 , NotExist = 3 ,
  AlreadyExists = 4 , AccessDenied = 5 , OutOfSpace = 6
}
 This enum is used by several file operations. More...
 
enum class  Permissions : int32 {
  None = 0 , OthersExe = 1 , OthersWrite = 2 , OthersRead = 4 ,
  OthersAll = 7 , GroupExe = 8 , GroupWrite = 16 , GroupRead = 32 ,
  GroupAll = 56 , OwnerExe = 64 , OwnerWrite = 128 , OwnerRead = 256 ,
  OwnerAll = 448 , AllAll = 511
}
 Provides attributes for files and directories. More...
 
enum class  Traits : int32 {
  None = 0 , Permissions = 1 , LastWriteTime = 2 , Length = 4 ,
  Crc32 = 8 , TotalPermissions = 16
}
 This enum is used by several file services to specify the file traits to get or set, respectively. More...
 

Functions

ARP_EXPORT std::ostream & operator<< (std::ostream &os, FileSystemError value)
 
ARP_EXPORT std::istream & operator>> (std::istream &is, FileSystemError &value)
 
ARP_EXPORT std::ostream & operator<< (std::ostream &os, Permissions value)
 
ARP_EXPORT std::istream & operator>> (std::istream &is, Permissions &value)
 
constexpr Permissions operator| (Permissions lhs, Permissions rhs)
 
constexpr Permissions operator& (Permissions lhs, Permissions rhs)
 
constexpr Permissionsoperator|= (Permissions &lhs, Permissions rhs)
 
constexpr Permissionsoperator&= (Permissions &lhs, Permissions rhs)
 
constexpr Permissions operator~ (Permissions arg)
 
ARP_EXPORT std::ostream & operator<< (std::ostream &os, Traits value)
 
ARP_EXPORT std::istream & operator>> (std::istream &is, Traits &value)
 
constexpr Traits operator| (Traits lhs, Traits rhs)
 
constexpr Traits operator& (Traits lhs, Traits rhs)
 
constexpr Traitsoperator|= (Traits &lhs, Traits rhs)
 
constexpr Traitsoperator&= (Traits &lhs, Traits rhs)
 
constexpr Traits operator~ (Traits arg)
 

Detailed Description

Namespace for services to access the filesystem

Enumeration Type Documentation

◆ FileSystemError

This enum is used by several file operations.

Enumerator
None 

Success

Unknown 

The error is not listed in this enumeration.

InvalidPath 

The path is invalid.

NotExist 

The path does not exist.

AlreadyExists 

The path already exists.

AccessDenied 

The file is already in use.

OutOfSpace 

There is not enough space on the device left.

◆ Permissions

Provides attributes for files and directories.

Enumerator
None 

None = NoPerms of posix

OthersExe 

Execute/search permission, others

OthersWrite 

Write permission, others

OthersRead 

Read permission, others

OthersAll 

Read, write, execute/search by others; others_read | others_write | others_exe

GroupExe 

Execute/search permission, group

GroupWrite 

Execute/search permission, group

GroupRead 

Read permission, group

GroupAll 

Read, write, execute/search by group; group_read | group_write | group_exe

OwnerExe 

Read permission, owner

OwnerWrite 

Write permission, owner

OwnerRead 

Execute/search permission, owner

OwnerAll 

Read, write, execute/search by owner; owner_read | owner_write | owner_exe

AllAll 

owner_all | group_all | others_all

◆ Traits

enum class Arp::System::Commons::Services::Io::Traits : int32
strong

This enum is used by several file services to specify the file traits to get or set, respectively.

Enumerator
None 

Not set.

Permissions 

Specifies the file permissions mask as Arp.System.Commons.Services.Io.Permissions mask. Using this trait to write a file with permissions will add the permissions mask to current file permissions. If the file will be created, the permissions mask will be added to default permissions.

LastWriteTime 

Specifies the time of last write access or last modified time, respectively as System.DateTime in UTC

Length 

Specifies the size of the file in bytes as System.Int64.

Crc32 

Specifies the CRC32 value of the file as System.Int32.

TotalPermissions 

Specifies the file permissions mask as Arp.System.Commons.Services.Io.Permissions mask. Using this trait to write a file with permissions will override current permissions.