mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
ERT 80650d05d49b419ec74ba316312313dfc6ba0875 opm-common e7db252f3e310a04718f315e6cdb9d6c428c5762 opm-parser 817722b99baa62cc63a5f859cc90b951f0b0636e
152 lines
9.1 KiB
C
152 lines
9.1 KiB
C
/*
|
|
Copyright (C) 2011 Statoil ASA, Norway.
|
|
|
|
The file 'local_config.h' is part of ERT - Ensemble based Reservoir Tool.
|
|
|
|
ERT 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.
|
|
|
|
ERT 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.
|
|
|
|
See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
|
|
for more details.
|
|
*/
|
|
|
|
#ifndef ERT_LOCAL_CONFIG_H
|
|
#define ERT_LOCAL_CONFIG_H
|
|
|
|
#include <ert/util/stringlist.h>
|
|
|
|
#include <ert/ecl/ecl_grid.h>
|
|
|
|
#include <ert/enkf/local_updatestep.h>
|
|
#include <ert/enkf/local_ministep.h>
|
|
#include <ert/enkf/ensemble_config.h>
|
|
#include <ert/enkf/enkf_obs.h>
|
|
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef enum {
|
|
INVALID_CMD = 0, /* MArks EOF */
|
|
CREATE_UPDATESTEP = 1, /* UPDATESTEP_NAME -> local_config_alloc_updatestep(); */
|
|
CREATE_MINISTEP = 2, /* MINISTEP_NAME OBSSET_NAME -> local_config_alloc_ministep(); */
|
|
ATTACH_MINISTEP = 3, /* UPDATESTEP_NAME , MINISTEP_NAME -> local_updatestep_add_ministep(); */
|
|
CREATE_DATASET = 4, /* NAME */
|
|
ATTACH_DATASET = 5, /* DATASET_NAME MINISTEP_NAME */
|
|
CREATE_OBSSET = 6, /* NAME */
|
|
ADD_DATA = 7, /* DATA_KEY -> local_ministep_add_node(); */
|
|
ADD_OBS = 8, /* OBS_KEY -> local_ministep_add_obs(); */
|
|
ACTIVE_LIST_ADD_OBS_INDEX = 9, /* OBS_KEY , ACTIVE_INDEX */
|
|
ACTIVE_LIST_ADD_DATA_INDEX = 10, /* DATA_KEY , ACTIVE_INDEX */
|
|
ACTIVE_LIST_ADD_MANY_OBS_INDEX = 11, /* OBS_KEY , NUM_INDEX , INDEX1, INDEX2, INDEX3,... */
|
|
ACTIVE_LIST_ADD_MANY_DATA_INDEX = 12, /* DATA_KEY , NUM_INDEX , INDEX1 , INDEX2 , INDEX3 ,... */
|
|
DEL_DATA = 16, /* DATASET KEY*/
|
|
DEL_OBS = 17, /* MINISTEP OBS_KEY */
|
|
DATASET_DEL_ALL_DATA = 18, /* DATASET */
|
|
OBSSET_DEL_ALL_OBS = 19, /* No arguments */
|
|
ADD_FIELD = 20, /* MINISTEP FIELD_NAME REGION_NAME */
|
|
COPY_DATASET = 21, /* SRC_NAME TARGET_NAME */
|
|
COPY_OBSSET = 22, /* SRC_NAME TARGET_NAME */
|
|
ATTACH_OBSSET = 23, /* OBSSET_NAME MINISTEP_NAME */
|
|
/*****************************************************************/
|
|
CREATE_ECLREGION = 100, /* Name of region TRUE|FALSE*/
|
|
LOAD_FILE = 101, /* Key, filename */
|
|
ECLREGION_SELECT_ALL = 102, /* Region TRUE|FALSE */
|
|
ECLREGION_SELECT_VALUE_EQUAL = 103, /* Region FILE_key:kw(:nr) VALUE TRUE|FALSE */
|
|
ECLREGION_SELECT_VALUE_LESS = 104, /* Region FILE_key:kw(:nr) VALUE TRUE|FALSE */
|
|
ECLREGION_SELECT_VALUE_MORE = 105, /* Region FILE_key:kw(:nr) VALUE TRUE|FALSE */
|
|
ECLREGION_SELECT_BOX = 106, /* Region i1 i2 j1 j2 k1 k2 TRUE|FALSE */
|
|
ECLREGION_SELECT_SLICE = 107, /* Region dir n1 n2 TRUE|FALSE */
|
|
ECLREGION_SELECT_PLANE = 108, /* Region nx ny nz px py pz sign TRUE|FALSE */
|
|
ECLREGION_SELECT_IN_POLYGON = 109, /* Region num_points p1x p12 p2x p2y p3x p3y ... pnx pny TRUE|FALSE */
|
|
/*****************************************************************/
|
|
CREATE_POLYGON = 200,/* NAME NUM_POINTS x1 y1 x2 y2 x3 y3 ... xn yn */
|
|
LOAD_POLYGON = 201,/* NAME FILENAME */
|
|
/*****************************************************************/
|
|
LOAD_SURFACE = 300,
|
|
CREATE_SURFACE_REGION = 301,
|
|
SURFACE_REGION_SELECT_IN_POLYGON = 302,
|
|
SURFACE_REGION_SELECT_LINE = 303,
|
|
ADD_DATA_SURFACE = 304
|
|
} local_config_instruction_type;
|
|
|
|
|
|
|
|
#define CREATE_UPDATESTEP_STRING "CREATE_UPDATESTEP"
|
|
#define CREATE_MINISTEP_STRING "CREATE_MINISTEP"
|
|
|
|
#define ATTACH_MINISTEP_STRING "ATTACH_MINISTEP"
|
|
#define CREATE_DATASET_STRING "CREATE_DATASET"
|
|
#define ATTACH_DATASET_STRING "ATTACH_DATASET"
|
|
#define CREATE_OBSSET_STRING "CREATE_OBSSET"
|
|
#define ATTACH_OBSSET_STRING "ATTACH_OBSSET"
|
|
#define ADD_DATA_STRING "ADD_DATA"
|
|
#define ADD_OBS_STRING "ADD_OBS"
|
|
#define ACTIVE_LIST_ADD_OBS_INDEX_STRING "ACTIVE_LIST_ADD_OBS_INDEX"
|
|
#define ACTIVE_LIST_ADD_DATA_INDEX_STRING "ACTIVE_LIST_ADD_DATA_INDEX"
|
|
#define ACTIVE_LIST_ADD_MANY_OBS_INDEX_STRING "ACTIVE_LIST_ADD_MANY_OBS_INDEX"
|
|
#define ACTIVE_LIST_ADD_MANY_DATA_INDEX_STRING "ACTIVE_LIST_ADD_MANY_DATA_INDEX"
|
|
#define DEL_DATA_STRING "DEL_DATA"
|
|
#define DEL_OBS_STRING "DEL_OBS"
|
|
#define ADD_FIELD_STRING "ADD_FIELD"
|
|
#define DATASET_DEL_ALL_DATA_STRING "DATASET_DEL_ALL_DATA"
|
|
#define OBSSET_DEL_ALL_OBS_STRING "OBSSET_DEL_ALL_OBS"
|
|
#define COPY_DATASET_STRING "COPY_DATASET"
|
|
#define COPY_OBSSET_STRING "COPY_OBSSET"
|
|
#define CREATE_ECLREGION_STRING "CREATE_ECLREGION"
|
|
#define LOAD_FILE_STRING "LOAD_FILE"
|
|
#define ECLREGION_SELECT_ALL_STRING "ECLREGION_SELECT_ALL"
|
|
#define ECLREGION_SELECT_VALUE_EQUAL_STRING "ECLREGION_SELECT_VALUE_EQUAL"
|
|
#define ECLREGION_SELECT_VALUE_LESS_STRING "ECLREGION_SELECT_VALUE_LESS"
|
|
#define ECLREGION_SELECT_VALUE_MORE_STRING "ECLREGION_SELECT_VALUE_MORE"
|
|
#define ECLREGION_SELECT_BOX_STRING "ECLREGION_SELECT_BOX"
|
|
#define ECLREGION_SELECT_SLICE_STRING "ECLREGION_SELECT_SLICE"
|
|
#define ECLREGION_SELECT_PLANE_STRING "ECLREGION_SELECT_PLANE"
|
|
#define ECLREGION_SELECT_IN_POLYGON_STRING "ECLREGION_SELECT_IN_POLYGON"
|
|
#define CREATE_POLYGON_STRING "CREATE_POLYGON"
|
|
#define LOAD_POLYGON_STRING "LOAD_POLYGON"
|
|
#define LOAD_SURFACE_STRING "LOAD_SURFACE"
|
|
#define CREATE_SURFACE_REGION_STRING "CREATE_SURFACE_REGION"
|
|
#define SURFACE_REGION_SELECT_IN_POLYGON_STRING "SURFACE_REGION_SELECT_IN_POLYGON"
|
|
#define SURFACE_REGION_SELECT_LINE_STRING "SURFACE_REGION_SELECT_LINE"
|
|
#define ADD_DATA_SURFACE_STRING "ADD_DATA_SURFACE"
|
|
|
|
|
|
typedef struct local_config_struct local_config_type;
|
|
|
|
local_config_type * local_config_alloc( );
|
|
void local_config_clear( local_config_type * local_config );
|
|
void local_config_free( local_config_type * local_config );
|
|
local_ministep_type * local_config_alloc_ministep( local_config_type * local_config , const char * key );
|
|
local_ministep_type * local_config_alloc_ministep_copy( local_config_type * local_config , const char * src_key , const char * new_key);
|
|
void local_config_set_default_updatestep( local_config_type * local_config , local_updatestep_type * update_step );
|
|
local_updatestep_type * local_config_get_updatestep( const local_config_type * local_config );
|
|
local_ministep_type * local_config_get_ministep( const local_config_type * local_config , const char * key);
|
|
void local_config_set_updatestep(local_config_type * local_config, int step1 , int step2 , const char * key);
|
|
void local_config_reload( local_config_type * local_config , const ecl_grid_type * ecl_grid , const ensemble_config_type * ensemble_config , const enkf_obs_type * enkf_obs ,
|
|
const char * all_active_config_file);
|
|
const char * local_config_get_cmd_string( local_config_instruction_type cmd );
|
|
|
|
stringlist_type * local_config_get_config_files( const local_config_type * local_config );
|
|
void local_config_clear_config_files( local_config_type * local_config );
|
|
void local_config_add_config_file( local_config_type * local_config , const char * config_file );
|
|
|
|
void local_config_fprintf( const local_config_type * local_config , const char * config_file);
|
|
void local_config_summary_fprintf( const local_config_type * local_config , const char * config_file);
|
|
void local_config_fprintf_config( const local_config_type * local_config , FILE * stream);
|
|
local_obsdata_type * local_config_alloc_obsdata( local_config_type * local_config , const char * obsdata_name );
|
|
bool local_config_has_obsdata( const local_config_type * local_config , const char * obsdata_name);
|
|
local_dataset_type * local_config_alloc_dataset( local_config_type * local_config , const char * key );
|
|
bool local_config_has_dataset( const local_config_type * local_config , const char * key);
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|