diff options
| author | Markus Mittendrein <git@maxmitti.tk> | 2019-08-17 22:36:37 +0200 |
|---|---|---|
| committer | Markus Mittendrein <git@maxmitti.tk> | 2019-08-19 18:56:58 +0200 |
| commit | f40a21f5a6ca674d93905269bcb4b21f92c41800 (patch) | |
| tree | 79eb145e8828fdd2131f2a1251bc1f9133cedabc /src/cppc4group.cpp | |
| parent | 9f6da4965422b9f32c6a92b03b662bde025cc72c (diff) | |
| download | cc4group-f40a21f5a6ca674d93905269bcb4b21f92c41800.tar.gz cc4group-f40a21f5a6ca674d93905269bcb4b21f92c41800.zip | |
Add cc4group.addFromDisk with according cc4group.AllowEntryTypes
Diffstat (limited to 'src/cppc4group.cpp')
| -rw-r--r-- | src/cppc4group.cpp | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/src/cppc4group.cpp b/src/cppc4group.cpp index 5e8225b..bacf1f7 100644 --- a/src/cppc4group.cpp +++ b/src/cppc4group.cpp @@ -151,15 +151,30 @@ const CppC4Group::MemoryManagement CppC4Group::MemoryManagement::Copy{reinterpre const CppC4Group::MemoryManagement CppC4Group::MemoryManagement::Reference{reinterpret_cast<MemoryManagement::MemoryManagementStrategy>(cc4group.MemoryManagement.Reference)}; namespace { + int convertAllowedEntryTypes(const CppC4Group::AllowedEntryTypes allowedEntryTypes) + { + int result = 0; + if(allowedEntryTypes & CppC4Group::AllowedEntryTypes::File) + { + result |= cc4group.AllowedEntryTypes.File; + } + if(allowedEntryTypes & CppC4Group::AllowedEntryTypes::Directory) + { + result |= cc4group.AllowedEntryTypes.Directory; + } + // All is handled by the above two + return result; + } + CC4Group_TmpMemoryStrategy convertTmpMemoryStrategy(const CppC4Group::TmpMemoryStrategy strategy) { switch(strategy) { - case CppC4Group::Auto: + case CppC4Group::TmpMemoryStrategy::Auto: return cc4group.TmpMemoryStrategies.Auto; - case CppC4Group::File: + case CppC4Group::TmpMemoryStrategy::File: return cc4group.TmpMemoryStrategies.File; - case CppC4Group::Memory: + case CppC4Group::TmpMemoryStrategy::Memory: return cc4group.TmpMemoryStrategies.Memory; } return cc4group.TmpMemoryStrategies.Auto; @@ -403,6 +418,11 @@ bool CppC4Group::renameEntry(const std::string& oldPath, const std::string& newP return cc4group.renameEntry(p->g, oldPath.c_str(), newPath.c_str()); } +bool CppC4Group::addFromDisk(const std::string& path, const std::string& targetPath, const CppC4Group::AllowedEntryTypes allowedEntryTypes) +{ + return cc4group.addFromDisk(p->g, path.c_str(), targetPath.c_str(), convertAllowedEntryTypes(allowedEntryTypes)); +} + bool CppC4Group::createDirectory(const std::string& path) { return cc4group.createDirectory(p->g, path.c_str()); |
