KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
Public Types | Public Member Functions | Public Attributes | List of all members
Kratos::MapReduction< MapType > Class Template Reference

#include <reduction_utilities.h>

Collaboration diagram for Kratos::MapReduction< MapType >:

Public Types

using value_type = typename MapType::value_type
 
using return_type = MapType
 

Public Member Functions

return_type GetValue () const
 access to reduced value More...
 
void LocalReduce (const value_type rValue)
 NON-THREADSAFE (fast) value of reduction, to be used within a single thread. More...
 
void ThreadSafeReduce (MapReduction< MapType > &rOther)
 THREADSAFE (needs some sort of lock guard) reduction, to be used to sync threads. More...
 

Public Attributes

return_type mValue
 

Member Typedef Documentation

◆ return_type

template<class MapType >
using Kratos::MapReduction< MapType >::return_type = MapType

◆ value_type

template<class MapType >
using Kratos::MapReduction< MapType >::value_type = typename MapType::value_type

Member Function Documentation

◆ GetValue()

template<class MapType >
return_type Kratos::MapReduction< MapType >::GetValue ( ) const
inline

access to reduced value

◆ LocalReduce()

template<class MapType >
void Kratos::MapReduction< MapType >::LocalReduce ( const value_type  rValue)
inline

NON-THREADSAFE (fast) value of reduction, to be used within a single thread.

◆ ThreadSafeReduce()

template<class MapType >
void Kratos::MapReduction< MapType >::ThreadSafeReduce ( MapReduction< MapType > &  rOther)
inline

THREADSAFE (needs some sort of lock guard) reduction, to be used to sync threads.

Member Data Documentation

◆ mValue

template<class MapType >
return_type Kratos::MapReduction< MapType >::mValue

The documentation for this class was generated from the following file: