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

Namespace for services to access the filesystem More...

Classes

class  DirectoryServiceProxy
 
class  DirectoryServiceProxyFactory
 
class  FileServiceProxy
 
class  FileServiceProxyFactory
 
struct  FileSystemEntry
 This struct is used by file operations to reading of the file system entries. More...
 
class  FileSystemInfoServiceProxy
 
class  FileSystemInfoServiceProxyFactory
 
struct  FileSystemTraitsEntry
 This struct is used by file operations reading file informations from device. More...
 
class  IDirectoryService
 Provides common file directory operations. More...
 
class  IFileService
 Provides common file operations for reading and writing files as well as deleting/moving/copying files on the device. More...
 
class  IFileSystemInfoService
 A generic service to retrieve file system infos. More...
 
struct  SpaceInfo
 This struct is used by file operations to reading of the space informations. More...
 
struct  TraitItem
 Specifies a file trait item More...
 

Enumerations

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

Functions

std::ostream & operator<< (std::ostream &os, FileSystemError rhs)
 
std::istream & operator>> (std::istream &is, FileSystemError &rhs)
 
FileSystemError MapExceptionToFileSystemError (IoException &ex)
 
constexpr Permissions operator| (Permissions lhs, Permissions rhs)
 
constexpr Permissions operator & (Permissions lhs, Permissions rhs)
 
Permissionsoperator|= (Permissions &lhs, Permissions rhs)
 
Permissionsoperator &= (Permissions &lhs, Permissions rhs)
 
std::ostream & operator<< (std::ostream &os, Permissions rhs)
 
std::istream & operator>> (std::istream &is, Permissions &rhs)
 
constexpr Traits operator| (Traits lhs, Traits rhs)
 
constexpr Traits operator & (Traits lhs, Traits rhs)
 
Traitsoperator|= (Traits &lhs, Traits rhs)
 
Traitsoperator &= (Traits &lhs, Traits rhs)
 
std::ostream & operator<< (std::ostream &os, Traits rhs)
 
std::istream & operator>> (std::istream &is, Traits &rhs)
 

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, owner

OthersWrite 

Write permission, owner

OthersRead 

Read permission, owner

OthersAll 

Read, write, execute/search by owner; owner_read | owner_write | owner_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, others

OwnerWrite 

Write permission, others

OwnerRead 

Execute/search permission, others

OwnerAll 

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

AllAll 

owner_all | group_all | others_all

◆ Traits

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.

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.