2012-05-18 02:45:23 -05:00
|
|
|
/////////////////////////////////////////////////////////////////////////////////
|
|
|
|
//
|
2014-09-23 08:04:57 -05:00
|
|
|
// Copyright (C) 2011- Statoil ASA
|
|
|
|
// Copyright (C) 2013- Ceetron Solutions AS
|
|
|
|
// Copyright (C) 2011-2012 Ceetron AS
|
2019-09-06 03:40:57 -05:00
|
|
|
//
|
2012-05-18 02:45:23 -05:00
|
|
|
// ResInsight is free software: you can redistribute it and/or modify
|
|
|
|
// it under the terms of the GNU General Public License as published by
|
|
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
|
|
// (at your option) any later version.
|
2019-09-06 03:40:57 -05:00
|
|
|
//
|
2012-05-18 02:45:23 -05:00
|
|
|
// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
|
|
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
|
|
// FITNESS FOR A PARTICULAR PURPOSE.
|
2019-09-06 03:40:57 -05:00
|
|
|
//
|
|
|
|
// See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
|
2012-05-18 02:45:23 -05:00
|
|
|
// for more details.
|
|
|
|
//
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2022-11-24 03:46:54 -06:00
|
|
|
#include "enum_bitmask.hpp"
|
|
|
|
|
2012-06-26 09:10:41 -05:00
|
|
|
#include <QString>
|
2020-05-16 08:51:59 -05:00
|
|
|
#include <set>
|
2018-07-02 02:47:34 -05:00
|
|
|
#include <vector>
|
2012-05-18 02:45:23 -05:00
|
|
|
|
2017-08-11 07:05:59 -05:00
|
|
|
namespace RiaDefines
|
2012-05-18 02:45:23 -05:00
|
|
|
{
|
2021-01-21 05:58:46 -06:00
|
|
|
enum class EclipseUnitSystem
|
|
|
|
{
|
|
|
|
UNITS_METRIC,
|
|
|
|
UNITS_FIELD,
|
|
|
|
UNITS_LAB,
|
|
|
|
UNITS_UNKNOWN,
|
|
|
|
};
|
|
|
|
|
2020-04-23 16:25:22 -05:00
|
|
|
enum class ResultCatType
|
2019-09-06 03:40:57 -05:00
|
|
|
{
|
|
|
|
DYNAMIC_NATIVE,
|
|
|
|
STATIC_NATIVE,
|
|
|
|
SOURSIMRL,
|
|
|
|
GENERATED,
|
|
|
|
INPUT_PROPERTY,
|
|
|
|
FORMATION_NAMES,
|
2020-05-12 05:48:50 -05:00
|
|
|
ALLAN_DIAGRAMS,
|
2019-09-06 03:40:57 -05:00
|
|
|
FLOW_DIAGNOSTICS,
|
|
|
|
INJECTION_FLOODING,
|
|
|
|
REMOVED,
|
|
|
|
|
|
|
|
UNDEFINED = 999
|
|
|
|
};
|
|
|
|
|
2023-05-09 04:41:56 -05:00
|
|
|
enum class ResultDataType
|
|
|
|
{
|
|
|
|
UNKNOWN,
|
|
|
|
FLOAT,
|
|
|
|
DOUBLE,
|
|
|
|
INTEGER
|
|
|
|
};
|
|
|
|
|
2019-09-06 03:40:57 -05:00
|
|
|
// WARNING: DO NOT CHANGE THE ORDER WITHOUT KNOWING WHAT YOU ARE DOING!
|
|
|
|
// You may well change the behaviour of property filters.
|
2020-04-24 00:13:33 -05:00
|
|
|
enum class WellPathComponentType
|
2019-09-06 03:40:57 -05:00
|
|
|
{
|
|
|
|
// Production Tube
|
|
|
|
WELL_PATH,
|
|
|
|
// Well path flow completions
|
|
|
|
PERFORATION_INTERVAL,
|
|
|
|
FISHBONES,
|
|
|
|
FRACTURE,
|
|
|
|
ICD,
|
|
|
|
AICD,
|
|
|
|
ICV,
|
|
|
|
// Well path construction features
|
|
|
|
CASING,
|
|
|
|
LINER,
|
|
|
|
PACKER,
|
|
|
|
UNDEFINED_COMPONENT
|
|
|
|
};
|
2019-04-10 09:13:40 -05:00
|
|
|
|
2020-04-24 00:13:33 -05:00
|
|
|
enum class MeshModeType
|
2019-09-06 03:40:57 -05:00
|
|
|
{
|
|
|
|
FULL_MESH,
|
|
|
|
FAULTS_MESH,
|
|
|
|
NO_MESH
|
|
|
|
};
|
|
|
|
|
|
|
|
// Mock model text identifiers
|
|
|
|
QString mockModelBasic();
|
|
|
|
QString mockModelBasicWithResults();
|
|
|
|
QString mockModelLargeWithResults();
|
|
|
|
QString mockModelCustomized();
|
|
|
|
QString mockModelBasicInputCase();
|
|
|
|
|
|
|
|
// Units and conversions
|
2020-04-24 00:13:33 -05:00
|
|
|
enum class DepthUnitType
|
2019-09-06 03:40:57 -05:00
|
|
|
{
|
|
|
|
UNIT_METER,
|
|
|
|
UNIT_FEET,
|
|
|
|
UNIT_NONE
|
|
|
|
};
|
|
|
|
|
2021-06-09 07:51:26 -05:00
|
|
|
DepthUnitType fromEclipseUnit( EclipseUnitSystem eclipseUnit );
|
|
|
|
EclipseUnitSystem fromDepthUnit( DepthUnitType depthUnit );
|
|
|
|
|
2019-11-19 06:19:56 -06:00
|
|
|
// Depth types used for well log plots
|
2020-04-24 00:13:33 -05:00
|
|
|
enum class DepthTypeEnum
|
2019-11-19 06:19:56 -06:00
|
|
|
{
|
|
|
|
MEASURED_DEPTH,
|
|
|
|
TRUE_VERTICAL_DEPTH,
|
|
|
|
PSEUDO_LENGTH,
|
2020-01-08 03:31:01 -06:00
|
|
|
CONNECTION_NUMBER,
|
|
|
|
TRUE_VERTICAL_DEPTH_RKB
|
2019-11-19 06:19:56 -06:00
|
|
|
};
|
|
|
|
|
2020-04-24 00:13:33 -05:00
|
|
|
enum class PhaseType
|
2019-09-06 03:40:57 -05:00
|
|
|
{
|
|
|
|
OIL_PHASE,
|
|
|
|
GAS_PHASE,
|
2020-06-19 05:40:48 -05:00
|
|
|
WATER_PHASE,
|
|
|
|
PHASE_NOT_APPLICABLE
|
2019-09-06 03:40:57 -05:00
|
|
|
};
|
|
|
|
|
2020-04-24 00:29:32 -05:00
|
|
|
enum class ImportFileType
|
2019-09-06 03:40:57 -05:00
|
|
|
{
|
|
|
|
NOT_A_VALID_IMPORT_FILE = 0x00,
|
|
|
|
ECLIPSE_GRID_FILE = 0x01,
|
|
|
|
ECLIPSE_EGRID_FILE = 0x02,
|
|
|
|
ECLIPSE_INPUT_FILE = 0x04,
|
|
|
|
ECLIPSE_SUMMARY_FILE = 0x08,
|
|
|
|
GEOMECH_ODB_FILE = 0x10,
|
|
|
|
RESINSIGHT_PROJECT_FILE = 0x20,
|
2022-12-19 08:28:26 -06:00
|
|
|
ROFF_FILE = 0x30,
|
2019-09-06 03:40:57 -05:00
|
|
|
ECLIPSE_RESULT_GRID = ECLIPSE_GRID_FILE | ECLIPSE_EGRID_FILE,
|
2022-12-19 08:28:26 -06:00
|
|
|
ANY_ECLIPSE_FILE = ECLIPSE_RESULT_GRID | ECLIPSE_INPUT_FILE | ECLIPSE_SUMMARY_FILE | ROFF_FILE,
|
2019-09-06 03:40:57 -05:00
|
|
|
ANY_IMPORT_FILE = 0xFF
|
|
|
|
};
|
|
|
|
|
|
|
|
ImportFileType obtainFileTypeFromFileName( const QString& fileName );
|
|
|
|
QString defaultDirectoryLabel( ImportFileType fileTypes );
|
|
|
|
|
2020-04-24 00:13:33 -05:00
|
|
|
enum class CaseType
|
2019-09-06 03:40:57 -05:00
|
|
|
{
|
2020-01-17 03:29:58 -06:00
|
|
|
UNDEFINED_CASE = -1,
|
2019-09-06 03:40:57 -05:00
|
|
|
ECLIPSE_RESULT_CASE = 1,
|
|
|
|
ECLIPSE_INPUT_CASE = 2,
|
|
|
|
ECLIPSE_STAT_CASE = 3,
|
|
|
|
ECLIPSE_SOURCE_CASE = 4,
|
|
|
|
GEOMECH_ODB_CASE = 5
|
|
|
|
};
|
|
|
|
|
2020-04-24 00:13:33 -05:00
|
|
|
enum class FontSettingType
|
2019-09-06 03:40:57 -05:00
|
|
|
{
|
|
|
|
SCENE_FONT,
|
|
|
|
ANNOTATION_FONT,
|
|
|
|
WELL_LABEL_FONT,
|
|
|
|
PLOT_FONT
|
2012-05-18 02:45:23 -05:00
|
|
|
};
|
2012-06-26 09:10:41 -05:00
|
|
|
|
2020-04-28 01:06:07 -05:00
|
|
|
enum class GridCaseAxis
|
|
|
|
{
|
|
|
|
AXIS_I,
|
|
|
|
AXIS_J,
|
|
|
|
AXIS_K,
|
|
|
|
UNDEFINED_AXIS
|
|
|
|
};
|
|
|
|
|
2020-09-16 04:55:28 -05:00
|
|
|
enum class ThemeEnum
|
|
|
|
{
|
|
|
|
DEFAULT,
|
|
|
|
DARK,
|
2020-10-01 03:35:57 -05:00
|
|
|
UNDEFINED
|
2020-09-16 04:55:28 -05:00
|
|
|
};
|
|
|
|
|
2021-04-28 03:29:53 -05:00
|
|
|
enum class RINavigationPolicy : short
|
|
|
|
{
|
|
|
|
NAVIGATION_POLICY_CEETRON,
|
|
|
|
NAVIGATION_POLICY_CAD,
|
|
|
|
NAVIGATION_POLICY_GEOQUEST,
|
|
|
|
NAVIGATION_POLICY_RMS
|
|
|
|
};
|
|
|
|
|
2021-05-26 03:56:21 -05:00
|
|
|
enum class WellProductionType : short
|
|
|
|
{
|
|
|
|
PRODUCER,
|
|
|
|
OIL_INJECTOR,
|
|
|
|
GAS_INJECTOR,
|
|
|
|
WATER_INJECTOR,
|
|
|
|
UNDEFINED_PRODUCTION_TYPE
|
|
|
|
};
|
|
|
|
|
2021-05-26 05:35:20 -05:00
|
|
|
bool isInjector( WellProductionType wellProductionType );
|
|
|
|
|
2022-01-28 06:19:52 -06:00
|
|
|
QString stringListSeparator();
|
|
|
|
|
2022-03-25 05:39:12 -05:00
|
|
|
enum class ColumnCount
|
|
|
|
{
|
|
|
|
COLUMNS_1 = 1,
|
|
|
|
COLUMNS_2 = 2,
|
|
|
|
COLUMNS_3 = 3,
|
|
|
|
COLUMNS_4 = 4,
|
|
|
|
COLUMNS_UNLIMITED = 1000,
|
|
|
|
};
|
|
|
|
|
|
|
|
enum class RowCount
|
|
|
|
{
|
|
|
|
ROWS_1 = 1,
|
|
|
|
ROWS_2 = 2,
|
|
|
|
ROWS_3 = 3,
|
|
|
|
ROWS_4 = 4,
|
|
|
|
};
|
|
|
|
|
2022-03-31 05:34:07 -05:00
|
|
|
enum class MultiPlotPageUpdateType : uint32_t
|
|
|
|
{
|
2022-05-03 04:30:09 -05:00
|
|
|
NONE = 0b00000000,
|
|
|
|
LEGEND = 0b00000001,
|
|
|
|
PLOT = 0b00000010,
|
|
|
|
TITLE = 0b00000100,
|
|
|
|
ALL = 0b00000111
|
2022-03-31 05:34:07 -05:00
|
|
|
};
|
|
|
|
|
2022-11-24 03:46:54 -06:00
|
|
|
std::vector<double> viewScaleOptions();
|
2022-03-31 05:34:07 -05:00
|
|
|
|
2022-11-24 03:46:54 -06:00
|
|
|
enum class View3dContent
|
2022-03-31 05:34:07 -05:00
|
|
|
{
|
2022-11-24 03:46:54 -06:00
|
|
|
NONE = 0b00000000,
|
|
|
|
ECLIPSE_DATA = 0b00000001,
|
|
|
|
GEOMECH_DATA = 0b00000010,
|
|
|
|
FLAT_INTERSECTION = 0b00000100,
|
|
|
|
CONTOUR = 0b00001000,
|
|
|
|
ALL = 0b00001111
|
|
|
|
};
|
2022-07-04 08:48:52 -05:00
|
|
|
|
2019-09-06 03:40:57 -05:00
|
|
|
}; // namespace RiaDefines
|
2022-11-24 03:46:54 -06:00
|
|
|
|
|
|
|
// Activate bit mask operators at global scope
|
|
|
|
ENABLE_BITMASK_OPERATORS( RiaDefines::MultiPlotPageUpdateType )
|
|
|
|
ENABLE_BITMASK_OPERATORS( RiaDefines::View3dContent )
|