XIOS  1.0
Xml I/O Server
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Définitions de type Énumérations Valeurs énumérées Amis Macros
Référence de la classe xios::CDistributionServer

The class, for now, plays a role of computing local index for writing data on server. Plus de détails...

#include <distribution_server.hpp>

+ Graphe d'héritage de xios::CDistributionServer:
+ Graphe de collaboration de xios::CDistributionServer:

Fonctions membres publiques

 CDistributionServer (int rank, int dims, const CArray< size_t, 1 > &globalIndex=CArray< size_t, 1 >())
 
 CDistributionServer (int rank, const std::vector< int > &nBeginServer, const std::vector< int > &nSizeServer, const std::vector< int > &nGlobal)
 
 CDistributionServer (int rank, const std::vector< int > &nBeginServer, const std::vector< int > &nSizeServer, const std::vector< int > &nBeginGlobal, const std::vector< int > &nGlobal)
 
 CDistributionServer (int rank, const std::vector< CArray< int, 1 > > &globalIndexElements, const CArray< int, 1 > &elementOrder, const std::vector< int > &nBeginServer, const std::vector< int > &nSizeServer, const std::vector< int > &nBeginGlobal, const std::vector< int > &nGlobal)
 
virtual ~CDistributionServer ()
 
const GlobalLocalMapgetGlobalLocalIndex () const
 
int getGridSize () const
 Get the size of grid index in server (e.x: sizeGrid *= size of each dimensiion) Plus de détails...
 
virtual void computeLocalIndex (CArray< size_t, 1 > &globalIndex)
 Compute local index for writing data on server. Plus de détails...
 
virtual void computeGlobalIndex (CArray< int, 1 > &indexes) const
 Transforms local indexes owned by the server into global indexes. Plus de détails...
 
virtual void partialClear (void)
 
- Fonctions membres publiques inherited from xios::CDistribution
 CDistribution (int rank, int dims, const CArray< size_t, 1 > &globalIndex=CArray< size_t, 1 >())
 
virtual ~CDistribution ()
 
int getDims () const
 
int getRank () const
 Get dimension size. Plus de détails...
 
const CArray< size_t, 1 > & getGlobalIndex () const
 Get rank of current process. Plus de détails...
 

Fonctions membres protégées

virtual void createGlobalIndex ()
 clear heavy sized attibutes Plus de détails...
 
void createGlobalIndex (const std::vector< CArray< int, 1 > > &globalIndexElements, const CArray< int, 1 > &elementOrder)
 Create global index on server side Like the similar function on client side, this function serves on creating global index for data written by the server. Plus de détails...
 

Attributs protégés

GlobalLocalMap globalLocalIndexMap_
 
- Attributs protégés inherited from xios::CDistribution
CArray< size_t, 1 > globalIndex_
 
int dims_
 
int rank_
 

Attributs privés

std::vector< int > nGlobal_
 
std::vector< int > nBeginGlobal_
 
std::vector< int > nSize_
 
std::vector< int > nBegin_
 

Additional Inherited Members

- Types publics inherited from xios::CDistribution
typedef std::unordered_map
< size_t, int > 
GlobalLocalMap
 

Description détaillée

The class, for now, plays a role of computing local index for writing data on server.

Définition à la ligne 21 du fichier distribution_server.hpp.

Documentation des constructeurs et destructeur

xios::CDistributionServer::CDistributionServer ( int  rank,
int  dims,
const CArray< size_t, 1 > &  globalIndex = CArray< size_t, 1 >() 
)

Default constructor

xios::CDistributionServer::CDistributionServer ( int  rank,
const std::vector< int > &  nBeginServer,
const std::vector< int > &  nSizeServer,
const std::vector< int > &  nGlobal 
)
xios::CDistributionServer::CDistributionServer ( int  rank,
const std::vector< int > &  nBeginServer,
const std::vector< int > &  nSizeServer,
const std::vector< int > &  nBeginGlobal,
const std::vector< int > &  nGlobal 
)

Définition à la ligne 14 du fichier distribution_server.cpp.

Références createGlobalIndex().

+ Voici le graphe d'appel pour cette fonction :

xios::CDistributionServer::CDistributionServer ( int  rank,
const std::vector< CArray< int, 1 > > &  globalIndexElements,
const CArray< int, 1 > &  elementOrder,
const std::vector< int > &  nBeginServer,
const std::vector< int > &  nSizeServer,
const std::vector< int > &  nBeginGlobal,
const std::vector< int > &  nGlobal 
)

Définition à la ligne 24 du fichier distribution_server.cpp.

Références createGlobalIndex().

+ Voici le graphe d'appel pour cette fonction :

xios::CDistributionServer::~CDistributionServer ( )
virtual

Default destructor

Définition à la ligne 37 du fichier distribution_server.cpp.

Documentation des fonctions membres

void xios::CDistributionServer::computeGlobalIndex ( CArray< int, 1 > &  indexes) const
virtual

Transforms local indexes owned by the server into global indexes.

Paramètres
[in/out]indexes on input, local indexes of the server, on output, the corresponding global indexes

Définition à la ligne 201 du fichier distribution_server.cpp.

Références xios::CDistribution::globalIndex_.

Référencé par xios::CNc4DataOutput::writeGridCompressed_().

+ Voici le graphe des appelants de cette fonction :

void xios::CDistributionServer::computeLocalIndex ( CArray< size_t, 1 > &  globalIndex)
virtual

Compute local index for writing data on server.

Paramètres
[in]globalIndexGlobal index received from client

Définition à la ligne 176 du fichier distribution_server.cpp.

Références xios::CDistribution::globalIndex_, globalLocalIndexMap_, et xios::CArray< ValueType, NumDims, Allocator >::reference().

+ Voici le graphe d'appel pour cette fonction :

void xios::CDistributionServer::createGlobalIndex ( )
protectedvirtual

clear heavy sized attibutes

Create global index on server side Like the similar function on client side, this function serves on creating global index for data written by the server.

The global index is used to calculating local index of data written on each server

Réimplémentée à partir de xios::CDistribution.

Définition à la ligne 47 du fichier distribution_server.cpp.

Références xios::CDistribution::dims_, xios::CDistribution::getDims(), xios::CDistribution::globalIndex_, globalLocalIndexMap_, nBegin_, nGlobal_, nSize_, et xios::CArray< ValueType, NumDims, Allocator >::resize().

Référencé par CDistributionServer().

+ Voici le graphe d'appel pour cette fonction :

+ Voici le graphe des appelants de cette fonction :

void xios::CDistributionServer::createGlobalIndex ( const std::vector< CArray< int, 1 > > &  globalIndexElements,
const CArray< int, 1 > &  elementOrder 
)
protected

Create global index on server side Like the similar function on client side, this function serves on creating global index for data written by the server.

The global index is used to calculating local index of data written on each server

Paramètres
[in]globalIndexElementglobal index on server side of each element of grid (scalar, axis, domain)
[in]elementOrderthe order of elements of grid (e.x: domain->axis or domain->scalar)

Définition à la ligne 99 du fichier distribution_server.cpp.

Références xios::CDistribution::globalIndex_, globalLocalIndexMap_, nGlobal_, xios::numElement, et xios::CArray< ValueType, NumDims, Allocator >::resize().

+ Voici le graphe d'appel pour cette fonction :

const GlobalLocalMap& xios::CDistributionServer::getGlobalLocalIndex ( ) const
inline

Définition à la ligne 44 du fichier distribution_server.hpp.

Références globalLocalIndexMap_.

Référencé par xios::CGrid::computeWrittenIndex().

+ Voici le graphe des appelants de cette fonction :

int xios::CDistributionServer::getGridSize ( ) const

Get the size of grid index in server (e.x: sizeGrid *= size of each dimensiion)

Définition à la ligne 212 du fichier distribution_server.cpp.

Références globalLocalIndexMap_.

Référencé par xios::CGrid::recvIndex().

+ Voici le graphe des appelants de cette fonction :

void xios::CDistributionServer::partialClear ( void  )
virtual

Définition à la ligne 217 du fichier distribution_server.cpp.

Références globalLocalIndexMap_.

Référencé par xios::CGrid::computeIndex().

+ Voici le graphe des appelants de cette fonction :

Documentation des données membres

GlobalLocalMap xios::CDistributionServer::globalLocalIndexMap_
protected
std::vector<int> xios::CDistributionServer::nBegin_
private

Définition à la ligne 63 du fichier distribution_server.hpp.

Référencé par createGlobalIndex().

std::vector<int> xios::CDistributionServer::nBeginGlobal_
private

Définition à la ligne 61 du fichier distribution_server.hpp.

std::vector<int> xios::CDistributionServer::nGlobal_
private

Définition à la ligne 60 du fichier distribution_server.hpp.

Référencé par createGlobalIndex().

std::vector<int> xios::CDistributionServer::nSize_
private

Définition à la ligne 62 du fichier distribution_server.hpp.

Référencé par createGlobalIndex().


La documentation de cette classe a été générée à partir des fichiers suivants :