Back to index

salome-med  6.5.0
Classes | Functions | Variables
ParaMEDMEMComponent_i.cxx File Reference
#include "ParaMEDMEMComponent_i.hxx"
#include "utilities.h"
#include "Utils_SALOME_Exception.hxx"

Go to the source code of this file.

Classes

struct  except_st

Functions

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

Variables

pthread_mutex_t m1 = PTHREAD_MUTEX_INITIALIZER
pthread_mutex_t m2 = PTHREAD_MUTEX_INITIALIZER

Class Documentation

struct except_st

Definition at line 25 of file MPIMEDCouplingFieldDoubleServant.cxx.

Collaboration diagram for except_st:
Class Members
bool exception
string msg

Function Documentation

void* th_getdata ( void *  s)

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 *  s)

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 *  s)

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 *  s)

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 *  s)

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 *  s)

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);
}

Variable Documentation

pthread_mutex_t m1 = PTHREAD_MUTEX_INITIALIZER

Definition at line 32 of file ParaMEDMEMComponent_i.cxx.

pthread_mutex_t m2 = PTHREAD_MUTEX_INITIALIZER

Definition at line 33 of file ParaMEDMEMComponent_i.cxx.