-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-dnl Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+dnl Copyright (C) 2004-2012 CEA/DEN, EDF R&D
dnl
dnl This library is free software; you can redistribute it and/or
dnl modify it under the terms of the GNU Lesser General Public
-dnl Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+dnl Copyright (C) 2004-2012 CEA/DEN, EDF R&D
dnl
dnl This library is free software; you can redistribute it and/or
dnl modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
#!/bin/sh
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-@REM Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+@REM Copyright (C) 2004-2012 CEA/DEN, EDF R&D
@REM
@REM This library is free software; you can redistribute it and/or
@REM modify it under the terms of the GNU Lesser General Public
#!/bin/bash
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
#!/bin/sh
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
rm -rf autom4te.cache aclocal.m4 configure make_config
find . -name "*~" -print -exec rm {} \;
find . -name "*.pyc" -print -exec rm {} \;
-
-find bin -name Makefile.in | xargs rm -f
-find idl -name Makefile.in | xargs rm -f
-find resources -name Makefile.in | xargs rm -f
-find adm_local -name Makefile.in | xargs rm -f
-find src -name Makefile.in | xargs rm -f
-rm -f adm_local/unix/config_files/config*
-rm -f adm_local/unix/config_files/depcomp
-rm -f adm_local/unix/config_files/install-sh
-rm -f adm_local/unix/config_files/libtool.m4
-rm -f adm_local/unix/config_files/ltmain.sh
-rm -f adm_local/unix/config_files/ltoptions.m4
-rm -f adm_local/unix/config_files/ltsugar.m4
-rm -f adm_local/unix/config_files/ltversion.m4
-rm -f adm_local/unix/config_files/lt~obsolete.m4
-rm -f adm_local/unix/config_files/missing
-rm -f Makefile.in
+find . -name Makefile.in | xargs rm -f
+( cd adm_local/unix/config_files && rm -f config.* depcomp install-sh l*.m4 ltmain.sh missing py-compile )
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# Modified by : Marc Tajchman (CEA)
# Created from configure.in.base
#
-AC_INIT([Salome2 Project GHS3DPLUGIN module],[6.4.0], [webmaster.salome@opencascade.com], [SalomeGHS3DPLUGIN])
+AC_INIT([Salome2 Project GHS3DPLUGIN module],[6.5.0], [webmaster.salome@opencascade.com], [SalomeGHS3DPLUGIN])
AC_CONFIG_AUX_DIR(adm_local/unix/config_files)
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
-# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
-#
-# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+# Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
-#
-# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+# Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
algorithm. This algorithm is a commercial software.
\n To get a licence, visit http://www.distene.com/corp/eval-distene.html
-<ol>
-<li>\ref ghs3d_general_parameters "General parameters"</li>
-<li>\ref ghs3d_advanced_parameters "Advanced parameters"</li>
-<li>\ref ghs3d_enforced_vertices "Enforced vertices"</li>
-<li>\ref ghs3d_enforced_meshes "Enforced meshes"</li>
-</ol>
+-# \ref ghs3d_general_parameters
+-# \ref ghs3d_advanced_parameters
+-# \ref ghs3d_enforced_vertices
+-# \ref ghs3d_enforced_meshes
-\anchor ghs3d_general_parameters
-<h1>General parameters</h1>
+\section ghs3d_general_parameters General parameters
\image html ghs3d_parameters_basic.png
\ref ghs3d_top "Back to top"
-\anchor ghs3d_advanced_parameters
-<h1>Advanced parameters</h1>
+\section ghs3d_advanced_parameters Advanced parameters
\image html ghs3d_parameters_advanced.png
\ref ghs3d_top "Back to top"
-\anchor ghs3d_enforced_vertices
-<h1>Enforced vertices</h1>
+\section ghs3d_enforced_vertices Enforced vertices
\note This feature is currently available only on meshes with no
geometry attached. Such meshes can be obtained by
</ul>
\ref ghs3d_top "Back to top"
-\anchor ghs3d_enforced_meshes
-<h1>Enforced Meshes</h1>
+\section ghs3d_enforced_meshes Enforced Meshes
\note This feature is currently only available on meshes with no
geometry attached. Such meshes can be obtained by
<li>FACE</li>
</ul></li>
<li>If a size is given, the mesh will be refined around the enforced
-elements given the size</li>
+elements given the size (not available yet)</li>
<li>If a group name is given, the enforced elements will be added to
the group. If the group does not exist, it is created.</li>
</ul>
-<br><b>See Also</b> a sample TUI Script of the \ref tui_ghs3d "creation of a Ghs3D hypothesis", including enforced vertices.
+<br><b>See Also</b> a sample TUI Script of the \ref tui_ghs3d "creation of a Ghs3D hypothesis", including enforced vertices and meshes.
\ref ghs3d_top "Back to top"
</div>
<div class="footer1">
<div style="text-align: center;">
- Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE<br>
+ Copyright © 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE<br>
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS<br>
</div>
</div>
-# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
BASEIDL_FILES = GHS3DPlugin_Algorithm.idl
+BASEIDL_FILES_PY=$(BASEIDL_FILES:%.idl=%_idl.py)
+
# This variable defines the files to be installed
dist_salomeidl_DATA = $(BASEIDL_FILES)
$(OMNIORB_IDL) $(IDLPYFLAGS) -C$(DESTDIR)$(salomepythondir) $$file ; \
done
-# uninstall-local removes too much, but it works in distcheck
+# we want to remove only staff generated for IDL files and nothing more
uninstall-local:
- rm -rf $(DESTDIR)$(salomepythondir)/*
+ @for modulen in GHS3DPlugin ; do \
+ test -d $(DESTDIR)$(salomepythondir)/$${modulen} && echo "Removing $(DESTDIR)$(salomepythondir)/$${modulen}" && rm -rf $(DESTDIR)$(salomepythondir)/$${modulen} ; \
+ test -d $(DESTDIR)$(salomepythondir)/$${modulen}__POA && echo "Removing $(DESTDIR)$(salomepythondir)/$${modulen}__POA" && rm -rf $(DESTDIR)$(salomepythondir)/$${modulen}__POA ; \
+ done ; \
+ for filen in $(BASEIDL_FILES_PY) ; do \
+ echo "Removing $(DESTDIR)$(salomepythondir)/$${filen}" && rm -f $(DESTDIR)$(salomepythondir)/$${filen}* ; \
+ done
mostlyclean-local:
-rm -f *.hh *.cc .depidl
<?xml version='1.0' encoding='us-ascii'?>
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
<!--
- Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+ Copyright (C) 2004-2012 CEA/DEN, EDF R&D
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
<!--
- Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+ Copyright (C) 2004-2012 CEA/DEN, EDF R&D
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-#
from smesh import Mesh_Algorithm, AssureGeomPublished
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
if ( toMeshHoles )
return meshDS->ShapeToIndex( solid1 );
+ //////////// UNCOMMENT AS SOON AS
+ //////////// http://tracker.dev.opencascade.org/view.php?id=23129
+ //////////// IS SOLVED
// - Are we at a hole boundary face?
- if ( shells(1).IsSame( BRepTools::OuterShell( solid1 )) )
- { // - No, but maybe a hole is bound by two shapes? Does shells(1) touches another shell?
- bool touch = false;
- TopExp_Explorer eExp( shells(1), TopAbs_EDGE );
- // check if any edge of shells(1) belongs to another shell
- for ( ; eExp.More() && !touch; eExp.Next() ) {
- ansIt = mesh.GetAncestors( eExp.Current() );
- for ( ; ansIt.More() && !touch; ansIt.Next() ) {
- if ( ansIt.Value().ShapeType() == TopAbs_SHELL )
- touch = ( !ansIt.Value().IsSame( shells(1) ));
- }
- }
- if (!touch)
- return meshDS->ShapeToIndex( solid1 );
- }
+ // if ( shells(1).IsSame( BRepTools::OuterShell( solid1 )) )
+ // { // - No, but maybe a hole is bound by two shapes? Does shells(1) touches another shell?
+ // bool touch = false;
+ // TopExp_Explorer eExp( shells(1), TopAbs_EDGE );
+ // // check if any edge of shells(1) belongs to another shell
+ // for ( ; eExp.More() && !touch; eExp.Next() ) {
+ // ansIt = mesh.GetAncestors( eExp.Current() );
+ // for ( ; ansIt.More() && !touch; ansIt.Next() ) {
+ // if ( ansIt.Value().ShapeType() == TopAbs_SHELL )
+ // touch = ( !ansIt.Value().IsSame( shells(1) ));
+ // }
+ // }
+ // if (!touch)
+ // return meshDS->ShapeToIndex( solid1 );
+ // }
}
// find orientation of geom face within the first solid
TopExp_Explorer fExp( solid1, TopAbs_FACE );
SMESHDS_Mesh* theMeshDS = theHelper->GetMeshDS();
int nbInitialNodes = theNodeByGhs3dId.size();
- std::cout << "theNodeByGhs3dId.size(): " << nbInitialNodes << std::endl;
int nbMeshNodes = theMeshDS->NbNodes();
- std::cout << "theHelper->GetMesh()->NbNodes(): " << nbMeshNodes << std::endl;
const bool isQuadMesh =
theHelper->GetMesh()->NbEdges( ORDER_QUADRATIC ) ||
theHelper->GetMesh()->NbFaces( ORDER_QUADRATIC ) ||
theHelper->GetMesh()->NbVolumes( ORDER_QUADRATIC );
+
+#ifdef _DEBUG_
+ std::cout << "theNodeByGhs3dId.size(): " << nbInitialNodes << std::endl;
+ std::cout << "theHelper->GetMesh()->NbNodes(): " << nbMeshNodes << std::endl;
std::cout << "isQuadMesh: " << isQuadMesh << std::endl;
+#endif
if (theHelper->GetSubShapeID() != 0)
theHelper->IsQuadraticSubMesh( theHelper->GetSubShape() );
// ---------------------------------
int nbElem = 0, nbRef = 0;
- int aGMFNodeID = 0, shapeID;
+ int aGMFNodeID = 0/*, shapeID*/;
//int *nodeAssigne;
const SMDS_MeshNode** GMFNode;
#ifdef _DEBUG_
const SMDS_MeshNode* node = castToNode( nodeIt->next() );
gp_Pnt myPoint(node->X(),node->Y(),node->Z());
nbFoundElems = pntCls->FindElementsByPoint(myPoint, SMDSAbs_Node, foundElems);
+#ifdef _DEBUG_
std::cout << "Node at "<<node->X()<<", "<<node->Y()<<", "<<node->Z()<<std::endl;
std::cout << "Nb nodes found : "<<nbFoundElems<<std::endl;
+#endif
if (nbFoundElems ==0) {
if ((*aNodeToTopAbs_StateMap.find(node)).second == TopAbs_IN) {
newId = aNodeToGhs3dIdMap.size() + anEnforcedNodeToGhs3dIdMap.size() + 1; // ghs3d ids count from 1
}
else
isOK = false;
+#ifdef _DEBUG_
std::cout << "GHS3D node ID: "<<newId<<std::endl;
+#endif
}
if (isOK)
theKeptEnforcedEdges.insert(elem);
const SMDS_MeshNode* node = castToNode( nodeIt->next() );
gp_Pnt myPoint(node->X(),node->Y(),node->Z());
nbFoundElems = pntCls->FindElementsByPoint(myPoint, SMDSAbs_Node, foundElems);
+#ifdef _DEBUG_
std::cout << "Nb nodes found : "<<nbFoundElems<<std::endl;
+#endif
if (nbFoundElems ==0) {
if ((*aNodeToTopAbs_StateMap.find(node)).second == TopAbs_IN) {
newId = aNodeToGhs3dIdMap.size() + anEnforcedNodeToGhs3dIdMap.size() + 1; // ghs3d ids count from 1
}
else
isOK = false;
+#ifdef _DEBUG_
std::cout << "GHS3D node ID: "<<newId<<std::endl;
+#endif
}
if (isOK)
theKeptEnforcedTriangles.insert(elem);
}
// put nodes to theNodeByGhs3dId vector
+#ifdef _DEBUG_
std::cout << "aNodeToGhs3dIdMap.size(): "<<aNodeToGhs3dIdMap.size()<<std::endl;
+#endif
theNodeByGhs3dId.resize( aNodeToGhs3dIdMap.size() );
map<const SMDS_MeshNode*,int>::const_iterator n2id = aNodeToGhs3dIdMap.begin();
for ( ; n2id != aNodeToGhs3dIdMap.end(); ++ n2id)
}
// put nodes to anEnforcedNodeToGhs3dIdMap vector
+#ifdef _DEBUG_
std::cout << "anEnforcedNodeToGhs3dIdMap.size(): "<<anEnforcedNodeToGhs3dIdMap.size()<<std::endl;
+#endif
theEnforcedNodeByGhs3dId.resize( anEnforcedNodeToGhs3dIdMap.size());
n2id = anEnforcedNodeToGhs3dIdMap.begin();
for ( ; n2id != anEnforcedNodeToGhs3dIdMap.end(); ++ n2id)
coords.push_back(node->X());
coords.push_back(node->Y());
coords.push_back(node->Z());
+#ifdef _DEBUG_
std::cout << "Node at " << node->X()<<", " <<node->Y()<<", " <<node->Z();
+#endif
if (nodesCoords.find(coords) != nodesCoords.end()) {
// node already exists in original mesh
+#ifdef _DEBUG_
std::cout << " found" << std::endl;
+#endif
continue;
}
if (theEnforcedVertices.find(coords) != theEnforcedVertices.end()) {
// node already exists in enforced vertices
+#ifdef _DEBUG_
std::cout << " found" << std::endl;
+#endif
continue;
}
// theOrderedNodes.push_back(existingNode);
// }
+#ifdef _DEBUG_
std::cout << " not found" << std::endl;
+#endif
nodesCoords.insert(coords);
theOrderedNodes.push_back(node);
coords.push_back(node->X());
coords.push_back(node->Y());
coords.push_back(node->Z());
+#ifdef _DEBUG_
std::cout << "Node at " << node->X()<<", " <<node->Y()<<", " <<node->Z();
+#endif
// Test if point is inside shape to mesh
gp_Pnt myPoint(node->X(),node->Y(),node->Z());
TopAbs_State result = pntCls->GetPointState( myPoint );
if ( result == TopAbs_OUT ) {
+#ifdef _DEBUG_
std::cout << " out of volume" << std::endl;
+#endif
continue;
}
if (nodesCoords.find(coords) != nodesCoords.end()) {
+#ifdef _DEBUG_
std::cout << " found in nodesCoords" << std::endl;
+#endif
// theRequiredNodes.push_back(node);
continue;
}
if (theEnforcedVertices.find(coords) != theEnforcedVertices.end()) {
+#ifdef _DEBUG_
std::cout << " found in theEnforcedVertices" << std::endl;
+#endif
continue;
}
// if ( result != TopAbs_IN )
// continue;
+#ifdef _DEBUG_
std::cout << " not found" << std::endl;
+#endif
nodesCoords.insert(coords);
// theOrderedNodes.push_back(node);
theRequiredNodes.push_back(node);
for (int i=0;i<solSize;i++) {
std::cout << ReqVerTab[i][0] <<" "<< ReqVerTab[i][1] << " "<< ReqVerTab[i][2] << std::endl;
+#ifdef _DEBUG_
std::cout << "enfVertexSizes.at("<<i<<"): " << enfVertexSizes.at(i) << std::endl;
+#endif
double solTab[] = {enfVertexSizes.at(i)};
GmfSetLin(idxRequired, GmfVertices, ReqVerTab[i][0], ReqVerTab[i][1], ReqVerTab[i][2], dummyint);
GmfSetLin(idxSol, GmfSolAtVertices, solTab);
aNodeGroupByGhs3dId[usedEnforcedNodes] = enfVerticesWithGroup.find(ReqVerTab[i])->second;
+#ifdef _DEBUG_
std::cout << "aNodeGroupByGhs3dId["<<usedEnforcedNodes<<"] = \""<<aNodeGroupByGhs3dId[usedEnforcedNodes]<<"\""<<std::endl;
+#endif
usedEnforcedNodes++;
}
std::cout << "End writting in req and sol file" << std::endl;
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2007-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2007-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-// Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
-# Copyright (C) 2004-2011 CEA/DEN, EDF R&D
+# Copyright (C) 2004-2012 CEA/DEN, EDF R&D
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public