Version: 6.3.1
Public Member Functions | Protected Attributes | Private Attributes

StdMeshers_ImportSource1D_i Class Reference

#include <StdMeshers_ImportSource1D_i.hxx>

Inheritance diagram for StdMeshers_ImportSource1D_i:
Inheritance graph
[legend]

Public Member Functions

 StdMeshers_ImportSource1D_i (PortableServer::POA_ptr thePOA, int theStudyId,::SMESH_Gen *theGenImpl)
 StdMeshers_ImportSource1D_i.StdMeshers_ImportSource1D_i.
virtual ~StdMeshers_ImportSource1D_i ()
 StdMeshers_ImportSource1D_i.~StdMeshers_ImportSource1D_i.
void SetSourceEdges (const ::SMESH::ListOfGroups &groups)
SMESH::string_arrayGetSourceEdges ()
 Return entries of groups.
void SetCopySourceMesh (::CORBA::Boolean toCopyMesh,::CORBA::Boolean toCopyGroups)
void GetCopySourceMesh (::CORBA::Boolean &toCopyMesh,::CORBA::Boolean &toCopyGroups)
::StdMeshers_ImportSource1DGetImpl ()
 StdMeshers_ImportSource1D_i.GetImpl.
CORBA::Boolean IsDimSupported (SMESH::Dimension type)
 Verify whether hypothesis supports given entity type.
virtual char * SaveTo ()
 Write parameters in a string.
virtual void LoadFrom (const char *theStream)
 Retrieve parameters from the string.
virtual void UpdateAsMeshesRestored ()
 Retrieve groups by their ids loaded by LoadFrom() This is possible only when all meshes are fully loaded.
char * GetName ()
 SMESH_Hypothesis_i.GetName.
char * GetLibName ()
 SMESH_Hypothesis_i.GetLibName.
void SetLibName (const char *theLibName)
 SMESH_Hypothesis_i.SetLibName.
CORBA::Long GetId ()
 SMESH_Hypothesis_i.GetId.
void SetParameters (const char *theParameters)
 SMESH_Hypothesis_i.SetParameters()
char * GetParameters ()
 SMESH_Hypothesis_i.GetParameters()
SMESH::ListOfParametersGetLastParameters ()
 SMESH_Hypothesis_i.GetLastParameters()
void SetLastParameters (const char *theParameters)
 SMESH_Hypothesis_i.SetLastParameters()
void ClearParameters ()
 SMESH_Hypothesis_i.ClearParameters()
bool IsPublished ()
 SMESH_Hypothesis_i.IsPublished()

Protected Attributes

::SMESH_HypothesismyBaseImpl

Private Attributes

SMESH::string_array_var _groupEntries
std::vector< std::string > _groupIDs

Detailed Description

Definition at line 40 of file StdMeshers_ImportSource1D_i.hxx.


Constructor & Destructor Documentation

StdMeshers_ImportSource1D_i::StdMeshers_ImportSource1D_i ( PortableServer::POA_ptr  thePOA,
int  theStudyId,
::SMESH_Gen theGenImpl 
)

StdMeshers_ImportSource1D_i.StdMeshers_ImportSource1D_i.

Constructor

Definition at line 52 of file StdMeshers_ImportSource1D_i.cxx.

References _groupEntries, MESSAGE, and SMESH_Hypothesis_i.myBaseImpl.

  : SALOME::GenericObj_i( thePOA ), 
    SMESH_Hypothesis_i( thePOA )
{
  MESSAGE( "StdMeshers_ImportSource1D_i::StdMeshers_ImportSource1D_i" );
  myBaseImpl = new ::StdMeshers_ImportSource1D( theGenImpl->GetANewId(),
                                                theStudyId,
                                                theGenImpl );
  _groupEntries = new SMESH::string_array();
}
StdMeshers_ImportSource1D_i::~StdMeshers_ImportSource1D_i ( ) [virtual]

StdMeshers_ImportSource1D_i.~StdMeshers_ImportSource1D_i.

Destructor

Definition at line 73 of file StdMeshers_ImportSource1D_i.cxx.

References MESSAGE.

{
  MESSAGE( "StdMeshers_ImportSource1D_i::~StdMeshers_ImportSource1D_i" );
}

Member Function Documentation

void SMESH_Hypothesis_i::ClearParameters ( ) [inherited]
void StdMeshers_ImportSource1D_i.GetCopySourceMesh ( ::CORBA::Boolean &  toCopyMesh,
::CORBA::Boolean &  toCopyGroups 
)
CORBA::Long SMESH_Hypothesis_i::GetId ( ) [inherited]

SMESH_Hypothesis_i.GetId.

Get unique id of hypothesis

Definition at line 119 of file SMESH_Hypothesis_i.cxx.

References MESSAGE, and SMESH_Hypothesis_i.myBaseImpl.

{
  MESSAGE( "SMESH_Hypothesis_i::GetId" );
  return myBaseImpl->GetID();
}
StdMeshers_ImportSource1D * StdMeshers_ImportSource1D_i::GetImpl ( )
SMESH::ListOfParameters * SMESH_Hypothesis_i::GetLastParameters ( ) [inherited]

SMESH_Hypothesis_i.GetLastParameters()

Definition at line 189 of file SMESH_Hypothesis_i.cxx.

References SMESH_Gen_i.GetCurrentStudy(), SMESH_Hypothesis_i.GetParameters(), SMESH_Gen_i.GetSMESHGen(), SMESH_Hypothesis_i.IsPublished(), and SMESH_Hypothesis_i.myBaseImpl.

{
  SMESH::ListOfParameters_var aResult = new SMESH::ListOfParameters();
  SMESH_Gen_i *gen = SMESH_Gen_i::GetSMESHGen();
  if(gen) {
    char *aParameters;
    if(IsPublished())
     aParameters = GetParameters();
    else
      aParameters = myBaseImpl->GetLastParameters();

    SALOMEDS::Study_ptr aStudy = gen->GetCurrentStudy();
    if(!aStudy->_is_nil()) {
      SALOMEDS::ListOfListOfStrings_var aSections = aStudy->ParseVariables(aParameters); 
      if(aSections->length() > 0) {
        SALOMEDS::ListOfStrings aVars = aSections[aSections->length()-1];
        aResult->length(aVars.length());
        for(int i = 0;i < aVars.length();i++)
          aResult[i] = CORBA::string_dup( aVars[i]);
      }
    }
  }
  return aResult._retn();
}
char * SMESH_Hypothesis_i::GetLibName ( ) [inherited]

SMESH_Hypothesis_i.GetLibName.

Get plugin library name of hypothesis (required by persistency mechanism)

Definition at line 91 of file SMESH_Hypothesis_i.cxx.

References MESSAGE, and SMESH_Hypothesis_i.myBaseImpl.

Referenced by StdMeshers_LayerDistribution_i.SetLayerDistribution().

{
  MESSAGE( "SMESH_Hypothesis_i::GetLibName" );
  return CORBA::string_dup( myBaseImpl->GetLibName() );
};
char * SMESH_Hypothesis_i::GetName ( ) [inherited]

SMESH_Hypothesis_i.GetName.

Get type name of hypothesis

Definition at line 77 of file SMESH_Hypothesis_i.cxx.

References SMESH_Hypothesis_i.myBaseImpl.

Referenced by StdMeshers_LayerDistribution_i.SaveTo(), and StdMeshers_LayerDistribution_i.SetLayerDistribution().

{
  //MESSAGE( "SMESH_Hypothesis_i::GetName" );
  return CORBA::string_dup( myBaseImpl->GetName() );
};
char * SMESH_Hypothesis_i::GetParameters ( ) [inherited]

SMESH_Hypothesis_i.GetParameters()

Definition at line 168 of file SMESH_Hypothesis_i.cxx.

References SMESH_Gen_i.GetParameters(), SMESH_Gen_i.GetSMESHGen(), SMESH_Hypothesis_i.IsPublished(), MESSAGE, and SMESH_Hypothesis_i.myBaseImpl.

Referenced by SMESH_Hypothesis_i.GetLastParameters().

{
  SMESH_Gen_i *gen = SMESH_Gen_i::GetSMESHGen();
  char* aResult;
  if(IsPublished()) {
    MESSAGE("SMESH_Hypothesis_i::GetParameters() : Get Parameters from SObject");
    aResult = gen->GetParameters(SMESH::SMESH_Hypothesis::_narrow(_this()));
  }
  else {
    MESSAGE("SMESH_Hypothesis_i::GetParameters() : Get local parameters");
    aResult = myBaseImpl->GetParameters(); 
  }
  return CORBA::string_dup(aResult);
}
SMESH::string_array * StdMeshers_ImportSource1D_i::GetSourceEdges ( )

Return entries of groups.

Definition at line 129 of file StdMeshers_ImportSource1D_i.cxx.

References _groupEntries, MESSAGE, and SMESH_AdvancedEditor.res.

{
  MESSAGE( "StdMeshers_ImportSource1D_i::GetImportSource" );
  SMESH::string_array_var res = new SMESH::string_array( _groupEntries );
  return res._retn();
}
CORBA::Boolean StdMeshers_ImportSource1D_i::IsDimSupported ( SMESH::Dimension  type)

Verify whether hypothesis supports given entity type.

Parameters:
type- dimension (see SMESH.Dimension enumeration)
Return values:
CORBA.Boolean- TRUE if dimension is supported, FALSE otherwise

Verify whether hypothesis supports given entity type (see SMESH.Dimension enumeration)

Definition at line 276 of file StdMeshers_ImportSource1D_i.cxx.

References SMESH.DIM_1D.

{
  return type == SMESH::DIM_1D;
}
bool SMESH_Hypothesis_i::IsPublished ( ) [inherited]
void StdMeshers_ImportSource1D_i::LoadFrom ( const char *  theStream) [virtual]

Retrieve parameters from the string.

Parameters:
theStream- the input string

Reimplemented from SMESH_Hypothesis_i.

Definition at line 200 of file StdMeshers_ImportSource1D_i.cxx.

References _groupEntries, _groupIDs, and SMESH_Hypothesis_i.myBaseImpl.

{
  std::istringstream is( theStream );

  int nbGroups;
  is >> nbGroups;

  _groupEntries = new SMESH::string_array;
  _groupEntries->length( nbGroups );
  std::string id, entry;
  for ( int i = 0; i < _groupEntries->length(); ++i )
  {
    if ( is >> entry )
      _groupEntries[i] = entry.c_str();
    else
    {
      _groupEntries->length( i );
      is.clear(ios::badbit | is.rdstate());
      break;
    }
    if ( is >> id )
      _groupIDs.push_back( id );
    else
    {
      is.clear(ios::badbit | is.rdstate());
      break;
    }
  }

  myBaseImpl->LoadFrom( is );
}
char * StdMeshers_ImportSource1D_i::SaveTo ( ) [virtual]

Write parameters in a string.

Return values:
char*- resulting string

Reimplemented from SMESH_Hypothesis_i.

Definition at line 169 of file StdMeshers_ImportSource1D_i.cxx.

References _groupEntries, SMESH_Gen_i.GetCurrentStudy(), SMESH_Gen_i.GetSMESHGen(), SMESH_Hypothesis_i.myBaseImpl, and StdMeshers_ObjRefUlils.SaveToStream().

{
  std::ostringstream os;
  os << " " << _groupEntries->length();

  SALOMEDS::Study_var study = SMESH_Gen_i::GetSMESHGen()->GetCurrentStudy();
  for ( int i = 0; i < _groupEntries->length(); ++i )
  {
    // entry
    os << " " << _groupEntries[i];

    // id
    SALOMEDS::SObject_var groupSO = study->FindObjectID( _groupEntries[i] );
    CORBA::Object_var groupObj;
    if ( !groupSO->_is_nil() )
      groupObj = groupSO->GetObject();
    StdMeshers_ObjRefUlils::SaveToStream( groupObj, os );
  }

  myBaseImpl->SaveTo( os );

  return CORBA::string_dup( os.str().c_str() );
}
void StdMeshers_ImportSource1D_i.SetCopySourceMesh ( ::CORBA::Boolean  toCopyMesh,
::CORBA::Boolean  toCopyGroups 
)
void SMESH_Hypothesis_i::SetLastParameters ( const char *  theParameters) [inherited]

SMESH_Hypothesis_i.SetLastParameters()

Definition at line 220 of file SMESH_Hypothesis_i.cxx.

References SMESH_Hypothesis_i.IsPublished(), and SMESH_Hypothesis_i.myBaseImpl.

{
  if(!IsPublished()) {
    myBaseImpl->SetLastParameters(theParameters);
  }
}
void SMESH_Hypothesis_i::SetLibName ( const char *  theLibName) [inherited]

SMESH_Hypothesis_i.SetLibName.

Set plugin library name of hypothesis (required by persistency mechanism)

Definition at line 150 of file SMESH_Hypothesis.cxx.

Referenced by SMESH_Gen_i.createHypothesis().

{
  _libName = string(theLibName);
}
void SMESH_Hypothesis_i::SetParameters ( const char *  theParameters) [inherited]

SMESH_Hypothesis_i.SetParameters()

Definition at line 148 of file SMESH_Hypothesis_i.cxx.

References SMESH_Gen_i.GetSMESHGen(), SMESH_Hypothesis_i.IsPublished(), SMESH_Hypothesis_i.myBaseImpl, SMESH_Gen_i.ParseParameters(), and SMESH_Gen_i.UpdateParameters().

{
  SMESH_Gen_i *gen = SMESH_Gen_i::GetSMESHGen();
  char * aParameters = CORBA::string_dup(theParameters);
  if(gen){
    if(IsPublished()) {
      SMESH_Gen_i::GetSMESHGen()->UpdateParameters(SMESH::SMESH_Hypothesis::_narrow(_this()),aParameters);
    }
    else {
      myBaseImpl->SetParameters(gen->ParseParameters(aParameters));
    }
  }
}
void StdMeshers_ImportSource1D_i.SetSourceEdges ( const ::SMESH::ListOfGroups groups)
void StdMeshers_ImportSource1D_i::UpdateAsMeshesRestored ( ) [virtual]

Retrieve groups by their ids loaded by LoadFrom() This is possible only when all meshes are fully loaded.

Reimplemented from SMESH_Hypothesis_i.

Definition at line 239 of file StdMeshers_ImportSource1D_i.cxx.

References _groupIDs, GetImpl(), and ex21_lamp.group.

{
  std::vector<SMESH_Group*> smesh_groups;
  for ( unsigned i = 0; i < _groupIDs.size(); ++i )
  {
    std::istringstream is( _groupIDs[i].c_str() );
    SMESH::SMESH_GroupBase_var group =
      StdMeshers_ObjRefUlils::LoadObjectFromStream<SMESH::SMESH_GroupBase>( is );
    if ( SMESH_GroupBase_i* gp_i = SMESH::DownCast<SMESH_GroupBase_i*>( group ))
      smesh_groups.push_back( gp_i->GetSmeshGroup() );
  }
  GetImpl()->RestoreGroups(smesh_groups);
}

Field Documentation

SMESH::string_array_var StdMeshers_ImportSource1D_i._groupEntries [private]
std::vector< std::string > StdMeshers_ImportSource1D_i._groupIDs [private]

Definition at line 70 of file StdMeshers_ImportSource1D_i.hxx.

Referenced by LoadFrom(), and UpdateAsMeshesRestored().

Definition at line 97 of file SMESH_Hypothesis_i.hxx.

Referenced by SMESH_Hypothesis_i.ClearParameters(), StdMeshers_NumberOfSegments_i.ConversionMode(), SMESH_Algo_i.GetCompatibleHypothesis(), StdMeshers_Deflection1D_i.GetDeflection(), StdMeshers_NumberOfSegments_i.GetDistrType(), StdMeshers_NumberOfSegments_i.GetExpressionFunction(), StdMeshers_AutomaticLength_i.GetFineness(), SMESH_Hypothesis_i.GetId(), StdMeshers_ViscousLayers_i.GetImpl(), StdMeshers_UseExisting_2D_i.GetImpl(), StdMeshers_UseExisting_1D_i.GetImpl(), StdMeshers_StartEndLength_i.GetImpl(), StdMeshers_Regular_1D_i.GetImpl(), StdMeshers_Quadrangle_2D_i.GetImpl(), StdMeshers_Propagation_i.GetImpl(), StdMeshers_Projection_1D_i.GetImpl(), StdMeshers_Projection_2D_i.GetImpl(), StdMeshers_Projection_3D_i.GetImpl(), StdMeshers_RadialPrism_3D_i.GetImpl(), StdMeshers_Prism_3D_i.GetImpl(), StdMeshers_NumberOfSegments_i.GetImpl(), StdMeshers_NumberOfLayers_i.GetImpl(), StdMeshers_NumberOfLayers2D_i.GetImpl(), StdMeshers_MEFISTO_2D_i.GetImpl(), StdMeshers_MaxLength_i.GetImpl(), StdMeshers_MaxElementVolume_i.GetImpl(), StdMeshers_MaxElementArea_i.GetImpl(), StdMeshers_LocalLength_i.GetImpl(), StdMeshers_LengthFromEdges_i.GetImpl(), StdMeshers_LayerDistribution_i.GetImpl(), StdMeshers_LayerDistribution2D_i.GetImpl(), StdMeshers_ImportSource2D_i.GetImpl(), GetImpl(), StdMeshers_Import_1D_i.GetImpl(), StdMeshers_Import_1D2D_i.GetImpl(), StdMeshers_Hexa_3D_i.GetImpl(), StdMeshers_FixedPoints1D_i.GetImpl(), StdMeshers_Deflection1D_i.GetImpl(), StdMeshers_AutomaticLength_i.GetImpl(), StdMeshers_Arithmetic1D_i.GetImpl(), SMESH_Hypothesis_i.GetImpl(), SMESH_Hypothesis_i.GetLastParameters(), StdMeshers_StartEndLength_i.GetLength(), StdMeshers_MaxLength_i.GetLength(), StdMeshers_LocalLength_i.GetLength(), StdMeshers_Arithmetic1D_i.GetLength(), SMESH_Hypothesis_i.GetLibName(), StdMeshers_MaxElementArea_i.GetMaxElementArea(), StdMeshers_MaxElementVolume_i.GetMaxElementVolume(), StdMeshers_LengthFromEdges_i.GetMode(), SMESH_Hypothesis_i.GetName(), StdMeshers_FixedPoints1D_i.GetNbSegments(), StdMeshers_NumberOfLayers_i.GetNumberOfLayers(), StdMeshers_NumberOfSegments_i.GetNumberOfSegments(), StdMeshers_StartEndLength_i.GetObjectEntry(), StdMeshers_NumberOfSegments_i.GetObjectEntry(), StdMeshers_FixedPoints1D_i.GetObjectEntry(), StdMeshers_Arithmetic1D_i.GetObjectEntry(), SMESH_Hypothesis_i.GetParameters(), StdMeshers_FixedPoints1D_i.GetPoints(), StdMeshers_LocalLength_i.GetPrecision(), StdMeshers_MaxLength_i.GetPreestimatedLength(), StdMeshers_StartEndLength_i.GetReversedEdges(), StdMeshers_NumberOfSegments_i.GetReversedEdges(), StdMeshers_FixedPoints1D_i.GetReversedEdges(), StdMeshers_Arithmetic1D_i.GetReversedEdges(), StdMeshers_NumberOfSegments_i.GetScaleFactor(), StdMeshers_NumberOfSegments_i.GetTableFunction(), StdMeshers_MaxLength_i.GetUsePreestimatedLength(), StdMeshers_MaxLength_i.HavePreestimatedLength(), StdMeshers_LayerDistribution_i.LoadFrom(), StdMeshers_ImportSource2D_i.LoadFrom(), LoadFrom(), SMESH_Hypothesis_i.LoadFrom(), StdMeshers_LayerDistribution_i.SaveTo(), StdMeshers_ImportSource2D_i.SaveTo(), SaveTo(), SMESH_Hypothesis_i.SaveTo(), SMESH_Hypothesis_i.SetLastParameters(), StdMeshers_StartEndLength_i.SetObjectEntry(), StdMeshers_NumberOfSegments_i.SetObjectEntry(), StdMeshers_FixedPoints1D_i.SetObjectEntry(), StdMeshers_Arithmetic1D_i.SetObjectEntry(), SMESH_Hypothesis_i.SetParameters(), StdMeshers_MaxLength_i.SetPreestimatedLength(), StdMeshers_StartEndLength_i.SetReversedEdges(), StdMeshers_NumberOfSegments_i.SetReversedEdges(), StdMeshers_FixedPoints1D_i.SetReversedEdges(), StdMeshers_Arithmetic1D_i.SetReversedEdges(), StdMeshers.StdMeshers_ImportSource1D.SetSourceEdges(), StdMeshers.StdMeshers_ImportSource2D.SetSourceFaces(), SMESH_Hypothesis_i.SMESH_Hypothesis_i(), StdMeshers_Arithmetic1D_i.StdMeshers_Arithmetic1D_i(), StdMeshers_AutomaticLength_i.StdMeshers_AutomaticLength_i(), StdMeshers_Deflection1D_i.StdMeshers_Deflection1D_i(), StdMeshers_FixedPoints1D_i.StdMeshers_FixedPoints1D_i(), StdMeshers_Hexa_3D_i.StdMeshers_Hexa_3D_i(), StdMeshers_Import_1D2D_i.StdMeshers_Import_1D2D_i(), StdMeshers_Import_1D_i.StdMeshers_Import_1D_i(), StdMeshers_ImportSource1D_i(), StdMeshers_ImportSource2D_i.StdMeshers_ImportSource2D_i(), StdMeshers_LayerDistribution_i.StdMeshers_LayerDistribution_i(), StdMeshers_LengthFromEdges_i.StdMeshers_LengthFromEdges_i(), StdMeshers_LocalLength_i.StdMeshers_LocalLength_i(), StdMeshers_MaxElementArea_i.StdMeshers_MaxElementArea_i(), StdMeshers_MaxElementVolume_i.StdMeshers_MaxElementVolume_i(), StdMeshers_MaxLength_i.StdMeshers_MaxLength_i(), StdMeshers_MEFISTO_2D_i.StdMeshers_MEFISTO_2D_i(), StdMeshers_NumberOfLayers_i.StdMeshers_NumberOfLayers_i(), StdMeshers_NumberOfSegments_i.StdMeshers_NumberOfSegments_i(), StdMeshers_Prism_3D_i.StdMeshers_Prism_3D_i(), StdMeshers_Projection_1D_i.StdMeshers_Projection_1D_i(), StdMeshers_Projection_2D_i.StdMeshers_Projection_2D_i(), StdMeshers_Projection_3D_i.StdMeshers_Projection_3D_i(), StdMeshers_Propagation_i.StdMeshers_Propagation_i(), StdMeshers_Quadrangle_2D_i.StdMeshers_Quadrangle_2D_i(), StdMeshers_RadialPrism_3D_i.StdMeshers_RadialPrism_3D_i(), StdMeshers_Regular_1D_i.StdMeshers_Regular_1D_i(), StdMeshers_StartEndLength_i.StdMeshers_StartEndLength_i(), StdMeshers_ViscousLayers_i.StdMeshers_ViscousLayers_i(), and SMESH_Hypothesis_i.~SMESH_Hypothesis_i().

Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS