Commit 63f82073 authored by Sophie Wenzel-Teuber's avatar Sophie Wenzel-Teuber

Changing the physical layout of the code (include and src) and adding inline

namespaces to reflect the physical layout logically.

Change log:
namespace and folder are interchangable in the following:
* general:
    - Change names of classes and files to Snake case, starting with a capital
      letter
    - Tidy documentation and add @briefs everywhere
    - Adding namespaces inside #ifdef __cplusplus pragmas to C-files, such that
      the members will appear at the correct location in the documentation
* flow:
    - Move most of the classes in the flow namespace to a detailed namespace
* piol:
    - Move communicator to utils namespace and rename CommunicatorInterface.hh
      to just Communicator.hh
    - Move Read and Write classes to namespace file and rename to Input_file and
      Output_file
    - Move Object read/Write-classes to object namespace inside namespace file
    - Move ExSeis[PIOL] to configuration namespace
    - Rename Binary_file to IO_driver and move to own namespace
    - Create metadata namespace with Trace_metadata_key (formerly Meta) and a
      rules namespace containing everything concerning the rules for SEGY files
    - Create namespace segy for utilities and Trace header offsets (formerly Tr)
    - Create sort namespace inside operations namespace for the sort operations
* utils:
    - Create Distributed_vector classes to namespace of the same name
    - Remove mpi namespace and create mpi_utils for utilities and move
      MPI_Distributed_vector to distributed_vector namespace and MPI_types to
      types namespace
    - Create types namespace for various kinds of type definitions
parent 1e5d8c12
......@@ -145,46 +145,43 @@ include(third_party/third_party.cmake)
add_library(
exseisdat
src/PIOL_C_bindings.cc
src/flow/Cache.cc
src/flow/Flow_C_bindings.cc
src/flow/RadonGatherState.cc
src/flow/Set.cc
src/piol/mpi/MPI_Binary_file.cc
src/piol/segy/utils.cc
src/CommunicatorMPI.cc
src/ExSeis.cc
src/ExSeisPIOL.cc
src/ObjectInterface.cc
src/ObjectSEGY.cc
src/ReadInterface.cc
src/ReadSEGY.cc
src/ReadSEGYModel.cc
src/Rule.cc
src/Trace_metadata.cc
src/WriteInterface.cc
src/WriteSEGY.cc
src/gather.cc
src/minmax.cc
src/sort.cc
src/temporalfilter.cc
src/utils/decomposition/block_decomposition.cc
src/utils/encoding/character_encoding.cc
src/utils/encoding/number_encoding.cc
src/utils/logging/Log.cc
src/utils/logging/Status.cc
src/utils/mpi/MPI_error_to_string.cc
src/utils/mpi/MPI_max_array_length.cc
src/utils/signal_processing/AGC.cc
src/utils/signal_processing/Gain_function.cc
src/utils/signal_processing/Taper_function.cc
src/utils/signal_processing/mute.cc
src/utils/signal_processing/taper.cc
src/exseisdat/flow/detail/Cache.cc
src/exseisdat/flow/Flow_C_bindings.cc
src/exseisdat/flow/detail/Radon_gather_state.cc
src/exseisdat/flow/Set.cc
src/exseisdat/piol/configuration/ExSeis.cc
src/exseisdat/piol/configuration/ExSeisPIOL.cc
src/exseisdat/piol/file/Input_file.cc
src/exseisdat/piol/file/Input_file_segy.cc
src/exseisdat/piol/file/object/ObjectInterface.cc
src/exseisdat/piol/file/object/ObjectSEGY.cc
src/exseisdat/piol/file/object/ReadSEGYModel.cc
src/exseisdat/piol/file/Output_file.cc
src/exseisdat/piol/file/Output_file_segy.cc
src/exseisdat/piol/io_driver/IO_driver_mpi.cc
src/exseisdat/piol/metadata/rules/Rule.cc
src/exseisdat/piol/metadata/Trace_metadata.cc
src/exseisdat/piol/operations/gather.cc
src/exseisdat/piol/operations/minmax.cc
src/exseisdat/piol/operations/sort_operations/sort.cc
src/exseisdat/piol/PIOL_C_bindings.cc
src/exseisdat/piol/segy/utils.cc
src/exseisdat/utils/communicator/Communicator_mpi.cc
src/exseisdat/utils/decomposition/block_decomposition.cc
src/exseisdat/utils/encoding/character_encoding.cc
src/exseisdat/utils/encoding/number_encoding.cc
src/exseisdat/utils/logging/Log.cc
src/exseisdat/utils/logging/Status.cc
src/exseisdat/utils/mpi_utils/MPI_error_to_string.cc
src/exseisdat/utils/mpi_utils/MPI_max_array_length.cc
src/exseisdat/utils/signal_processing/AGC.cc
src/exseisdat/utils/signal_processing/Gain_function.cc
src/exseisdat/utils/signal_processing/Taper_function.cc
src/exseisdat/utils/signal_processing/mute.cc
src/exseisdat/utils/signal_processing/taper.cc
src/exseisdat/utils/signal_processing/temporalfilter.cc
)
target_compile_features(exseisdat PUBLIC cxx_std_14)
......
......@@ -8,7 +8,7 @@ configure_file(
@ONLY
)
set(INCLUDE_DOXYFILE "@INCLUDE = Doxyfile")
set(INCLUDE_DOXYFILE "@INCLUDE = ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile")
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile-man.in
${CMAKE_CURRENT_BINARY_DIR}/Doxyfile-man
......@@ -66,14 +66,22 @@ add_custom_command(
COMMENT "Building the documentation..."
)
add_custom_target(make_man_directory)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/man/exseis-extract-metadata.1
TARGET make_man_directory PRE_BUILD
COMMAND ${CMAKE_COMMAND} -E make_directory man
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/man/man/exseis-extract-metadata.1
COMMAND ${DOXYGEN_EXECUTABLE} "${CMAKE_CURRENT_BINARY_DIR}/Doxyfile-man"
MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile-man.in
DEPENDS
DEPENDS
make_man_directory
${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile-man.in
${EXSEISDAT_DOCUMENTED_EXAMPLES}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/man
COMMENT "Building the documentation..."
)
......@@ -82,7 +90,7 @@ add_custom_target(
doc ALL
DEPENDS
${CMAKE_CURRENT_BINARY_DIR}/html/index.html
${CMAKE_CURRENT_BINARY_DIR}/man/exseis-extract-metadata.1
${CMAKE_CURRENT_BINARY_DIR}/man/man/exseis-extract-metadata.1
)
# Set install target
......
......@@ -6,6 +6,7 @@
PROJECT_NAME = ExSeisDat
GENERATE_HTML = NO
GENERATE_XML = NO
GENERATE_MAN = YES
INPUT = @CMAKE_SOURCE_DIR@/util
......
......@@ -36,7 +36,6 @@ WARN_AS_ERROR = YES
INPUT = \
@CMAKE_SOURCE_DIR@/doc/namespaces.dox \
@CMAKE_SOURCE_DIR@/include \
@CMAKE_SOURCE_DIR@/util \
@CMAKE_SOURCE_DIR@/README.md \
@CMAKE_CURRENT_BINARY_DIR@/examples/documented \
@CMAKE_SOURCE_DIR@/examples/README.md
......@@ -82,7 +81,9 @@ ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
PREDEFINED = __cplusplus
SEARCH_INCLUDES = YES
INCLUDE_PATH =
GENERATE_XML = YES
XML_NS_MEMB_FILE_SCOPE = YES
# Aliases for implicit members
ALIASES += special_member_functions="Special Member Functions"
......
......@@ -18,6 +18,63 @@
/// etc.
///
///
/// @namespace exseis::utils::communicator
///
/// @brief Interface and implementations of a communicator that is used for
/// message passing between the processes.
///
///
/// @namespace exseis::utils::decomposition
///
/// @brief Functions for splitting ranges across processes.
///
///
/// @namespace exseis::utils::distributed_vector
///
/// @brief Interface and implementations of a vector that is distributed
/// over several processes.
///
///
/// @namespace exseis::utils::encoding
///
/// @brief Functions for different kinds of encodings.
///
///
/// @namespace exseis::utils::logging
///
/// @brief Logging utilities.
///
///
/// @namespace exseis::utils::mpi_utils
///
/// @brief MPI utilities.
///
///
/// @namespace exseis::utils::signal_processing
///
/// @brief Functions for processing seismic signals.
///
///
/// @namespace exseis::utils::types
///
/// @brief Aliases for fundamental types and conversions used throughout the
/// ExSeisDat project.
///
///
/// @namespace exseis::utils::types::mpi
///
/// @brief Aliases for MPI datatypes
///
///
/// @namespace exseis::piol
///
......@@ -33,6 +90,65 @@
/// files.
///
///
/// @namespace exseis::piol::configuration
///
/// @brief Classes for storing configurations of the program.
///
///
/// @namespace exseis::piol::file
///
/// @brief Basic read and write classes.
///
///
<<<<<<< HEAD
=======
/// @namespace exseis::piol::file::object
///
/// @brief classes to.......
///
/// @todo document!
///
///
>>>>>>> b6d20c75c4294edab32b0cff7259765af98af594
/// @namespace exseis::piol::io_driver
///
/// @brief Interface and implementations that perform I/O operations
///
///
/// @namespace exseis::piol::metadata
///
/// @brief Seismic metadata utilities
///
///
/// @namespace exseis::piol::metadata::rules
///
/// @brief Rules associated with trace parameters
///
///
/// @namespace exseis::piol::operations
///
/// @brief Basic operations performed on the file data
///
///
/// @namespace exseis::piol::operations::sort_operations
///
/// @brief Classes and functions for sorting the data
///
///
/// @namespace exseis::piol::segy
///
/// @brief SEGY specific parameters and functions
///
///
/// @namespace exseis::flow
///
......
......@@ -39,7 +39,7 @@ int main(int argc, char** argv)
auto piol = ExSeis::make();
// Create a SEGY file object
WriteSEGY file(piol, name);
Output_file_segy file(piol, name);
// nt is the number of traces, ns the number of samples per trace
size_t nt = 40000, ns = 1000;
......@@ -60,15 +60,15 @@ int main(int argc, char** argv)
Trace_metadata prm(lnt);
for (size_t j = 0; j < lnt; j++) {
float k = offset + j;
prm.set_floating_point(j, Meta::x_src, 1600.0 + k);
prm.set_floating_point(j, Meta::y_src, 2400.0 + k);
prm.set_floating_point(j, Meta::x_rcv, 100000.0 + k);
prm.set_floating_point(j, Meta::y_rcv, 3000000.0 + k);
prm.set_floating_point(j, Meta::xCmp, 10000.0 + k);
prm.set_floating_point(j, Meta::yCmp, 4000.0 + k);
prm.set_integer(j, Meta::il, 2400 + k);
prm.set_integer(j, Meta::xl, 1600 + k);
prm.set_integer(j, Meta::tn, offset + j);
prm.set_floating_point(j, Trace_metadata_key::x_src, 1600.0 + k);
prm.set_floating_point(j, Trace_metadata_key::y_src, 2400.0 + k);
prm.set_floating_point(j, Trace_metadata_key::x_rcv, 100000.0 + k);
prm.set_floating_point(j, Trace_metadata_key::y_rcv, 3000000.0 + k);
prm.set_floating_point(j, Trace_metadata_key::xCmp, 10000.0 + k);
prm.set_floating_point(j, Trace_metadata_key::yCmp, 4000.0 + k);
prm.set_integer(j, Trace_metadata_key::il, 2400 + k);
prm.set_integer(j, Trace_metadata_key::xl, 1600 + k);
prm.set_integer(j, Trace_metadata_key::tn, offset + j);
}
file.write_param(offset, lnt, &prm);
......
......@@ -31,7 +31,7 @@ int main()
auto piol = ExSeis::make();
// Create new SEGY file
WriteSEGY file(piol, name);
Output_file_segy file(piol, name);
auto dec = block_decomposition(nt, piol->get_num_rank(), piol->get_rank());
size_t offset = dec.global_offset;
......@@ -47,15 +47,15 @@ int main()
Trace_metadata prm(lnt);
for (size_t j = 0; j < lnt; j++) {
float k = offset + j;
prm.set_floating_point(j, Meta::x_src, 1600.0 + k);
prm.set_floating_point(j, Meta::y_src, 2400.0 + k);
prm.set_floating_point(j, Meta::x_rcv, 100000.0 + k);
prm.set_floating_point(j, Meta::y_rcv, 3000000.0 + k);
prm.set_floating_point(j, Meta::xCmp, 10000.0 + k);
prm.set_floating_point(j, Meta::yCmp, 4000.0 + k);
prm.set_integer(j, Meta::il, 2400 + k);
prm.set_integer(j, Meta::xl, 1600 + k);
prm.set_integer(j, Meta::tn, offset + j);
prm.set_floating_point(j, Trace_metadata_key::x_src, 1600.0 + k);
prm.set_floating_point(j, Trace_metadata_key::y_src, 2400.0 + k);
prm.set_floating_point(j, Trace_metadata_key::x_rcv, 100000.0 + k);
prm.set_floating_point(j, Trace_metadata_key::y_rcv, 3000000.0 + k);
prm.set_floating_point(j, Trace_metadata_key::xCmp, 10000.0 + k);
prm.set_floating_point(j, Trace_metadata_key::yCmp, 4000.0 + k);
prm.set_integer(j, Trace_metadata_key::il, 2400 + k);
prm.set_integer(j, Trace_metadata_key::xl, 1600 + k);
prm.set_integer(j, Trace_metadata_key::tn, offset + j);
}
file.write_param(offset, lnt, &prm);
......
......@@ -13,6 +13,7 @@
using namespace exseis::piol;
using namespace exseis::flow;
using namespace exseis::utils;
int main()
{
......
......@@ -37,9 +37,12 @@ int main(int argc, char** argv)
Set set(piol, iname);
CoordElem minmax[12];
set.get_min_max(Meta::x_src, Meta::y_src, &minmax[0]);
set.get_min_max(Meta::x_rcv, Meta::y_rcv, &minmax[4]);
set.get_min_max(Meta::xCmp, Meta::yCmp, &minmax[8]);
set.get_min_max(
Trace_metadata_key::x_src, Trace_metadata_key::y_src, &minmax[0]);
set.get_min_max(
Trace_metadata_key::x_rcv, Trace_metadata_key::y_rcv, &minmax[4]);
set.get_min_max(
Trace_metadata_key::xCmp, Trace_metadata_key::yCmp, &minmax[8]);
if (piol->get_rank() == 0) {
std::cout << "x Src " << minmax[0].val << " (" << minmax[0].num
......
......@@ -16,6 +16,6 @@ int main()
{
auto piol = ExSeis::make();
Set set(piol, "/ichec/work/exseisdat/*dat/10*/b*", "temp");
set.sort(SortType::OffLine);
set.sort(Sort_type::OffLine);
return 0;
}
......@@ -6,7 +6,7 @@
#define EXSEISDAT_FLOW_H
#include "exseisdat/piol.h"
#include "exseisdat/piol/operations/SortType.h"
#include "exseisdat/piol/operations/sort_operations/SortType.h"
#include "exseisdat/utils/signal_processing/AGC.h"
#include "exseisdat/utils/signal_processing/Taper_function.h"
......@@ -26,26 +26,35 @@ typedef struct PIOL_Set PIOL_Set;
#ifdef __cplusplus
namespace exseis {
namespace piol {
using namespace exseis::utils;
// Everything from here on is C API functions needing C linkage.
extern "C" {
#endif
#endif // __cplusplus
/// @name PIOL Set functions
///
/// @{
/*! Initialise the set.
/*! @brief Initialise the set.
* @param[in] piol The PIOL handle
* @param[in] pattern The file-matching pattern
* @return The set handle
*/
PIOL_Set* piol_set_new(const piol_exseis* piol, const char* pattern);
/*! Free (deinit) the set.
/*! @brief Free (deinit) the set.
* @param[in,out] set The set handle
*/
void piol_set_delete(PIOL_Set* set);
/*! Get the min and the max of a set of parameters passed. This is a parallel
* operation. It is the collective min and max across all processes (which also
* must all call this file).
/*! @brief Get the min and the max of a set of parameters passed.
*
* @details This is a parallel operation. It is the collective min and max
* across all processes (which also must all call this file).
* @param[in,out] set The set handle
* @param[in] m1 The first parameter type
* @param[in] m2 The second parameter type
......@@ -55,17 +64,17 @@ void piol_set_delete(PIOL_Set* set);
*/
void piol_set_get_min_max(
PIOL_Set* set,
exseis_Meta m1,
exseis_Meta m2,
exseis_Trace_metadata_key m1,
exseis_Trace_metadata_key m2,
struct PIOL_CoordElem* minmax);
/*! Sort the set by the specified sort type.
/*! @brief Sort the set by the specified sort type.
* @param[in,out] set The set handle
* @param[in] type The sort type
*/
void piol_set_sort(PIOL_Set* set, exseis_SortType type);
/*! Sort the set using a custom comparison function
/*! @brief Sort the set using a custom comparison function
* @param[in,out] set A handle for the set.
* @param[in] func The custom comparison function to sort set
*/
......@@ -73,7 +82,7 @@ void piol_set_sort_fn(
PIOL_Set* set,
bool (*func)(const piol_file_trace_metadata* param, size_t i, size_t j));
/*! Perform tailed taper on a set of traces
/*! @brief Perform tailed taper on a set of traces
* @param[in,out] set A handle for the set
* @param[in] taper_function The type of taper to be applied to traces.
* @param[in] ntpstr The length of left-tail taper ramp.
......@@ -86,31 +95,31 @@ void piol_set_taper(
size_t ntpstr,
size_t ntpend);
/*! Output using the given output prefix
/*! @brief Output using the given output prefix
* @param[in,out] set The set handle
* @param[in] oname The output prefix
*/
void piol_set_output(PIOL_Set* set, const char* oname);
/*! Set the text-header of the output
/*! @brief Set the text-header of the output
* @param[in,out] set The set handle
* @param[in] outmsg The output message
*/
void piol_set_text(PIOL_Set* set, const char* outmsg);
/*! Summarise the current status by whatever means the PIOL instrinsically
* supports
/*! @brief Summarise the current status by whatever means the PIOL
* instrinsically supports
* @param[in] set The set handle
*/
void piol_set_summary(const PIOL_Set* set);
/*! Add a file to the set based on the name given
/*! @brief Add a file to the set based on the name given
* @param[in,out] set The set handle
* @param[in] name The input name
*/
void piol_set_add(PIOL_Set* set, const char* name);
/*! Scale traces using automatic gain control for visualization
/*! @brief Scale traces using automatic gain control for visualization
* @param[in,out] set The set handle
* @param[in] type They type of agc scaling function used
* @param[in] window Length of the agc window
......@@ -122,8 +131,12 @@ void piol_set_agc(
size_t window,
exseis_Trace_value target_amplitude);
/// @} PIOL Set functions
#ifdef __cplusplus
} // extern "C"
#endif
} // namespace piol
} // namespace exseis
#endif // __cplusplus
#endif // EXSEISDAT_FLOW_H
////////////////////////////////////////////////////////////////////////////////
/// @file
/// @brief Flow API header
////////////////////////////////////////////////////////////////////////////////
#ifndef EXSEISDAT_FLOW_HH
#define EXSEISDAT_FLOW_HH
#include "exseisdat/piol.hh"
#include "exseisdat/flow/Cache.hh"
#include "exseisdat/flow/CacheElem.hh"
#include "exseisdat/flow/FileDesc.hh"
#include "exseisdat/flow/FuncOpt.hh"
#include "exseisdat/flow/GatherState.hh"
#include "exseisdat/flow/Op.hh"
#include "exseisdat/flow/OpOpt.hh"
#include "exseisdat/flow/OpParent.hh"
#include "exseisdat/flow/RadonGatherState.hh"
#include "exseisdat/flow/Set.hh"
#include "exseisdat/flow/TraceBlock.hh"
#include "exseisdat/flow/detail/Cache.hh"
#include "exseisdat/flow/detail/Cache_elem.hh"
#include "exseisdat/flow/detail/File_descriptor.hh"
#include "exseisdat/flow/detail/Function_options.hh"
#include "exseisdat/flow/detail/Gather_state.hh"
#include "exseisdat/flow/detail/Operation.hh"
#include "exseisdat/flow/detail/Operation_options.hh"
#include "exseisdat/flow/detail/Operation_parent.hh"
#include "exseisdat/flow/detail/Radon_gather_state.hh"
#include "exseisdat/flow/detail/Trace_block.hh"
#endif // EXSEISDAT_FLOW_HH
This diff is collapsed.
......@@ -2,12 +2,12 @@
/// @file
/// @brief
////////////////////////////////////////////////////////////////////////////////
#ifndef EXSEISDAT_FLOW_CACHE_HH
#define EXSEISDAT_FLOW_CACHE_HH
#ifndef EXSEISDAT_FLOW_DETAIL_CACHE_HH
#define EXSEISDAT_FLOW_DETAIL_CACHE_HH
#include "exseisdat/flow/CacheElem.hh"
#include "exseisdat/flow/FileDesc.hh"
#include "exseisdat/flow/TraceBlock.hh"
#include "exseisdat/flow/detail/Cache_elem.hh"
#include "exseisdat/flow/detail/File_descriptor.hh"
#include "exseisdat/flow/detail/Trace_block.hh"
#include <algorithm>
#include <deque>
......@@ -21,11 +21,11 @@ namespace detail {
class Cache {
public:
/// Typedef for passing in a list of FileDesc objects.
typedef std::deque<std::shared_ptr<FileDesc>> FileDeque;
typedef std::deque<std::shared_ptr<File_descriptor>> FileDeque;
private:
/// A vector of cache elements
std::vector<CacheElem> m_cache;
std::vector<Cache_elem> m_cache;
/// The PIOL object
std::shared_ptr<exseis::piol::ExSeisPIOL> m_piol;
......@@ -44,7 +44,7 @@ class Cache {
* @param[in] c_trc if True, get the traces.
* @return Return a block with the traces and/or parameters.
*/
std::shared_ptr<TraceBlock> get_cache(
std::shared_ptr<Trace_block> get_cache(
std::shared_ptr<exseis::piol::Rule> rule,
FileDeque& desc,
bool c_prm,
......@@ -56,7 +56,7 @@ class Cache {
* @param[in] desc A deque of unique pointers to file descriptors.
* @return Return a block with the parameters.
*/
std::shared_ptr<TraceBlock> cache_prm(
std::shared_ptr<Trace_block> cache_prm(
std::shared_ptr<exseis::piol::Rule> rule, FileDeque& desc)
{
return get_cache(rule, desc, true, false);
......@@ -67,7 +67,7 @@ class Cache {
* @param[in] desc A deque of unique pointers to file descriptors.
* @return Return a block with the traces.
*/
std::shared_ptr<TraceBlock> cache_trc(FileDeque& desc)
std::shared_ptr<Trace_block> cache_trc(FileDeque& desc)
{
return get_cache(nullptr, desc, false, true);
}
......@@ -80,7 +80,7 @@ class Cache {
{
auto it = std::find_if(
m_cache.begin(), m_cache.end(),
[desc](const CacheElem& elem) -> bool {
[desc](const Cache_elem& elem) -> bool {
return elem.check_prm(desc);
});
return it != m_cache.end();
......@@ -94,7 +94,7 @@ class Cache {
{
auto it = std::find_if(
m_cache.begin(), m_cache.end(),
[desc](const CacheElem& elem) -> bool {
[desc](const Cache_elem& elem) -> bool {
return elem.check_trc(desc);
});
return it != m_cache.end();
......@@ -107,7 +107,7 @@ class Cache {
{
auto it = std::find_if(
m_cache.begin(), m_cache.end(),
[desc](const CacheElem& elem) -> bool {
[desc](const Cache_elem& elem) -> bool {
return elem.desc == desc;
});
m_cache.erase(it);
......@@ -131,4 +131,4 @@ class Cache {
} // namespace flow
} // namespace exseis
#endif // EXSEISDAT_FLOW_CACHE_HH
#endif // EXSEISDAT_FLOW_DETAIL_CACHE_HH
////////////////////////////////////////////////////////////////////////////////
/// @file
////////////////////////////////////////////////////////////////////////////////
#ifndef EXSEISDAT_FLOW_CACHEELEM_HH
#define EXSEISDAT_FLOW_CACHEELEM_HH
#ifndef EXSEISDAT_FLOW_DETAIL_CACHE_ELEM_HH
#define EXSEISDAT_FLOW_DETAIL_CACHE_ELEM_HH
#include "exseisdat/flow/FileDesc.hh"
#include "exseisdat/flow/TraceBlock.hh"
#include "exseisdat/flow/detail/File_descriptor.hh"
#include "exseisdat/flow/detail/Trace_block.hh"
#include <deque>
#include <memory>
......@@ -18,22 +18,22 @@ namespace detail {
/*! A structure to store cache elements of traces and parameters corresponding
* to a collection of files
*/
struct CacheElem {
struct Cache_elem {
/// Typedef for passing in a list of FileDesc objects.
typedef std::deque<std::shared_ptr<FileDesc>> FileDeque;
typedef std::deque<std::shared_ptr<File_descriptor>> FileDeque;