From 6494a992ae23a156900f696f9d2c74b0226421f2 Mon Sep 17 00:00:00 2001
From: Mark Olesen <Mark.Olesen@esi-group.com>
Date: Wed, 19 Jul 2023 17:56:38 +0200
Subject: [PATCH] ENH: add IOstreamOption enumeration for COHERENT file format

---
 src/OpenFOAM/db/Time/TimeIO.C            | 4 ++--
 src/OpenFOAM/db/options/IOstreamOption.C | 3 ++-
 src/OpenFOAM/db/options/IOstreamOption.H | 5 +++--
 3 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/OpenFOAM/db/Time/TimeIO.C b/src/OpenFOAM/db/Time/TimeIO.C
index b4126553c56..30848008657 100644
--- a/src/OpenFOAM/db/Time/TimeIO.C
+++ b/src/OpenFOAM/db/Time/TimeIO.C
@@ -412,10 +412,10 @@ void Foam::Time::readDict()
 
         if (writeStreamOption_.compression() == IOstreamOption::COMPRESSED)
         {
-            if (writeStreamOption_.format() == IOstreamOption::BINARY)
+            if (writeStreamOption_.format() != IOstreamOption::ASCII)
             {
                 IOWarningInFunction(controlDict_)
-                    << "Disabled binary format compression"
+                    << "Disabled output compression for non-ascii format"
                     << " (inefficient/ineffective)"
                     << endl;
 
diff --git a/src/OpenFOAM/db/options/IOstreamOption.C b/src/OpenFOAM/db/options/IOstreamOption.C
index 08be7382397..8cf0b2d3f46 100644
--- a/src/OpenFOAM/db/options/IOstreamOption.C
+++ b/src/OpenFOAM/db/options/IOstreamOption.C
@@ -5,7 +5,7 @@
     \\  /    A nd           | www.openfoam.com
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
-    Copyright (C) 2018-2020 OpenCFD Ltd.
+    Copyright (C) 2018-2023 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -43,6 +43,7 @@ Foam::IOstreamOption::formatNames
 ({
     { streamFormat::ASCII, "ascii" },
     { streamFormat::BINARY, "binary" },
+    { streamFormat::COHERENT, "coherent" },
 });
 
 
diff --git a/src/OpenFOAM/db/options/IOstreamOption.H b/src/OpenFOAM/db/options/IOstreamOption.H
index 5b16cd3e3dc..dedfb0978b3 100644
--- a/src/OpenFOAM/db/options/IOstreamOption.H
+++ b/src/OpenFOAM/db/options/IOstreamOption.H
@@ -6,7 +6,7 @@
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
     Copyright (C) 2011-2015 OpenFOAM Foundation
-    Copyright (C) 2018-2022 OpenCFD Ltd.
+    Copyright (C) 2018-2023 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -73,7 +73,8 @@ public:
         enum streamFormat : char
         {
             ASCII = 0,          //!< "ascii" (normal default)
-            BINARY              //!< "binary"
+            BINARY,             //!< "binary"
+            COHERENT            //!< "coherent"
         };
 
         //- Compression treatment (UNCOMPRESSED | COMPRESSED)
-- 
GitLab