PLCnext API Documentation 25.0.2.69
IFileService.hpp
1
2//
3// Copyright Phoenix Contact GmbH & Co. KG
4//
6#pragma once
8#include "Arp/Base/Rsc/Commons/Rsc.hpp"
9#include "Arp/Base/Rsc/Commons/IRscService.hpp"
10#include <vector>
11#include "Arp/Base/Rsc/Commons/RscStream.hpp"
12#include "Arp/Base/Rsc/Commons/RscString.hxx"
13#include "Arp/System/Commons/Services/Io/FileSystemError.hpp"
14#include "Arp/System/Commons/Services/Io/TraitItem.hpp"
15#include "Arp/System/Commons/Services/Io/Traits.hpp"
16
17// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IFileService.cs
18
20{
21
22using namespace Arp::Base::Rsc::Commons;
23
37class ARP_EXPORT IFileService : public IRscService
38{
39public: // usings
40 using Ptr = std::shared_ptr<IFileService>;
41
42public: // construction/destruction
44 IFileService(void) = default;
45
46public: // static policy operation
47 static IRscServiceProxyFactory& GetProxyFactory(void);
48
49public: // abstract operations
57 virtual boolean Exists(const RscString<512>& path) = 0;
58
69 virtual FileSystemError Write(const RscString<512>& filePath, boolean overwrite, const std::vector<TraitItem>& traitItems, RscStream data) = 0;
70
81 virtual FileSystemError Read(Traits fileTraits, const RscString<512>& filePath, RscStream data, std::vector<TraitItem>& traitItems) = 0;
82
90 virtual FileSystemError Delete(const RscString<512>& filePath) = 0;
91
102 virtual FileSystemError Move(boolean createDirectory, boolean overwrite, const RscString<512>& sourceFilePath, const RscString<512>& destinationFilePath) = 0;
103
114 virtual FileSystemError Copy(boolean createDirectory, boolean overwrite, const RscString<512>& sourceFilePath, const RscString<512>& destinationFilePath) = 0;
115};
116
117} // end of namespace Arp::System::Commons::Services::Io
This is the base interface of all Rsc services.
Definition: IRscService.hpp:22
std::shared_ptr< IRscService > Ptr
The shared_ptr type of IRscService.
Definition: IRscService.hpp:25
This class might be used to marshal unstructured stream data as bytes.
Definition: RscStream.hpp:29
Interface for service proxy factories to create service proxies used by RSC clients.
Definition: IRscServiceProxyFactory.hpp:22
Provides common file operations for reading and writing files as well as deleting/moving/copying file...
Definition: IFileService.hpp:38
virtual FileSystemError Delete(const RscString< 512 > &filePath)=0
Deletes the specified file.
virtual FileSystemError Read(Traits fileTraits, const RscString< 512 > &filePath, RscStream data, std::vector< TraitItem > &traitItems)=0
Reads the specified file from device.
IFileService(void)=default
Constructs an IFileService instance.
virtual boolean Exists(const RscString< 512 > &path)=0
Checks if the specified file exists.
virtual FileSystemError Move(boolean createDirectory, boolean overwrite, const RscString< 512 > &sourceFilePath, const RscString< 512 > &destinationFilePath)=0
Moves the specified file.
virtual FileSystemError Write(const RscString< 512 > &filePath, boolean overwrite, const std::vector< TraitItem > &traitItems, RscStream data)=0
Writes the given data to the specified file.
virtual FileSystemError Copy(boolean createDirectory, boolean overwrite, const RscString< 512 > &sourceFilePath, const RscString< 512 > &destinationFilePath)=0
Copies the specified files.
Namespace for services to access the filesystem
Traits
This enum is used by several file services to specify the file traits to get or set,...
Definition: Traits.hpp:19
FileSystemError
This enum is used by several file operations.
Definition: FileSystemError.hpp:19