Back to index

salome-med  6.5.0
Classes | Namespaces | Functions
ParaMEDMEMComponent_i.hxx File Reference
#include "SALOMEconfig.h"
#include "MPIObject_i.hxx"
#include "SALOME_Component_i.hxx"
#include "Topology.hxx"
#include "MEDCouplingFieldDouble.hxx"
#include "InterpKernelDEC.hxx"
#include "InterpolationOptions.hxx"
#include "MPIProcessorGroup.hxx"
#include "CommInterface.hxx"
#include "MEDCouplingFieldDoubleServant.hxx"
#include "Utils_CorbaException.hxx"
#include <map>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  thread_st
class  ParaMEDMEM::ParaMEDMEMComponent_i

Namespaces

namespace  ParaMEDMEM

Functions

void * th_setinterpolationoptions (void *st)
void * th_initializecoupling (void *st)
void * th_terminatecoupling (void *st)
void * th_getdata (void *st)
void * th_initializecouplingdist (void *st)
void * th_terminatecouplingdist (void *st)

Class Documentation

struct thread_st

Definition at line 44 of file ParaMEDMEMComponent_i.hxx.

Collaboration diagram for thread_st:
Class Members
double bounding_box_adjustment
double bounding_box_adjustment_abs
ParaMEDMEMComponent_ptr compo
string coupling
bool do_rotate
MPIMEDCouplingFieldDoubleCorbaInterface_ptr fieldptr
const char * intersection_type
string ior
int ip
double max_distance_for_3Dsurf_intersect
bool measure_abs
double median_plane
long orientation
bool P1P0_bary_method
double precision
long print_level
const char * splitting_policy
IORTab * tior

Function Documentation

void* th_getdata ( void *  st)

Definition at line 586 of file ParaMEDMEMComponent_i.cxx.

{
  ostringstream msg;
  thread_st *st = (thread_st*)s;
  except_st *est = new except_st;
  est->exception = false;

  try
    {
      st->fieldptr->getDataByMPI(st->coupling.c_str());
    }
  catch(const SALOME::SALOME_Exception &ex)
    {
      est->exception = true;
      est->msg = ex.details.text;
    }
  catch(const CORBA::Exception &ex)
    {
      est->exception = true;
      msg << "CORBA::Exception: " << ex;
      est->msg = msg.str();
    }
  delete st;
  return((void*)est);
}

Here is the caller graph for this function:

void* th_initializecoupling ( void *  st)

Definition at line 532 of file ParaMEDMEMComponent_i.cxx.

{
  ostringstream msg;
  thread_st *st = (thread_st*)s;
  except_st *est = new except_st;
  est->exception = false;

  try
    {
      SALOME_MED::ParaMEDMEMComponent_var compo=SALOME_MED::ParaMEDMEMComponent::_narrow((*(st->tior))[st->ip]);
      compo->initializeCoupling(st->coupling.c_str(),st->ior.c_str());
    }
  catch(const SALOME::SALOME_Exception &ex)
    {
      est->exception = true;
      est->msg = ex.details.text;
    }
  catch(const CORBA::Exception &ex)
    {
      est->exception = true;
      msg << "CORBA::Exception: " << ex;
      est->msg = msg.str();
    }
  delete st;
  return((void*)est);
}

Here is the caller graph for this function:

void* th_initializecouplingdist ( void *  st)

Definition at line 612 of file ParaMEDMEMComponent_i.cxx.

{
  ostringstream msg;
  thread_st *st = (thread_st*)s;
  except_st *est = new except_st;
  est->exception = false;

  try
    {
      st->compo->initializeCoupling(st->coupling.c_str(), st->ior.c_str());
    }
  catch(const SALOME::SALOME_Exception &ex)
    {
      est->exception = true;
      est->msg = ex.details.text;
    }
  catch(const CORBA::Exception &ex)
    {
      est->exception = true;
      msg << "CORBA::Exception: " << ex;
      est->msg = msg.str();
    }
  delete st;
  return((void*)est);
}

Here is the caller graph for this function:

void* th_setinterpolationoptions ( void *  st)

Definition at line 494 of file ParaMEDMEMComponent_i.cxx.

{
  ostringstream msg;
  thread_st *st = (thread_st*)s;
  except_st *est = new except_st;
  est->exception = false;
  try
    {
      SALOME_MED::ParaMEDMEMComponent_var compo=SALOME_MED::ParaMEDMEMComponent::_narrow((*(st->tior))[st->ip]);
      compo->setInterpolationOptions(st->coupling.c_str(),
                                     st->print_level,
                                     st->intersection_type,
                                     st->precision,
                                     st->median_plane,
                                     st->do_rotate,
                                     st->bounding_box_adjustment,
                                     st->bounding_box_adjustment_abs,
                                     st->max_distance_for_3Dsurf_intersect,
                                     st->orientation,
                                     st->measure_abs,
                                     st->splitting_policy,
                                     st->P1P0_bary_method);
    }
  catch(const SALOME::SALOME_Exception &ex)
    {
      est->exception = true;
      est->msg = ex.details.text;
    }
  catch(const CORBA::Exception &ex)
    {
      est->exception = true;
      msg << "CORBA::Exception: " << ex;
      est->msg = msg.str();
    }
  delete st;
  return((void*)est);
}

Here is the caller graph for this function:

void* th_terminatecoupling ( void *  st)

Definition at line 559 of file ParaMEDMEMComponent_i.cxx.

{
  ostringstream msg;
  thread_st *st = (thread_st*)s;
  except_st *est = new except_st;
  est->exception = false;

  try
    {
      SALOME_MED::ParaMEDMEMComponent_var compo=SALOME_MED::ParaMEDMEMComponent::_narrow((*(st->tior))[st->ip]);
      compo->terminateCoupling(st->coupling.c_str());
    }
  catch(const SALOME::SALOME_Exception &ex)
    {
      est->exception = true;
      est->msg = ex.details.text;
    }
  catch(const CORBA::Exception &ex)
    {
      est->exception = true;
      msg << "CORBA::Exception: " << ex;
      est->msg = msg.str();
    }
  delete st;
  return((void*)est);
}

Here is the caller graph for this function:

void* th_terminatecouplingdist ( void *  st)

Definition at line 638 of file ParaMEDMEMComponent_i.cxx.

{
  ostringstream msg;
  thread_st *st = (thread_st*)s;
  except_st *est = new except_st;
  est->exception = false;

  try
    {
      st->compo->terminateCoupling(st->coupling.c_str());
    }
  catch(const SALOME::SALOME_Exception &ex)
    {
      est->exception = true;
      est->msg = ex.details.text;
    }
  catch(const CORBA::Exception &ex)
    {
      est->exception = true;
      msg << "CORBA::Exception: " << ex;
      est->msg = msg.str();
    }
  delete st;
  return((void*)est);
}