|
43 | 43 | #include "arcane/core/internal/IMeshInternal.h"
|
44 | 44 | #include "arcane/utils/Collection.h"
|
45 | 45 | #include "arcane/utils/List.h"
|
| 46 | +#include "arcane/utils/PlatformUtils.h" |
46 | 47 |
|
47 | 48 | #include "neo/Mesh.h"
|
48 | 49 | #include "ItemConnectivityMng.h"
|
@@ -1338,6 +1339,70 @@ addNodes(Int64ConstArrayView nodes_uid, Int32ArrayView nodes_lid)
|
1338 | 1339 | /*---------------------------------------------------------------------------*/
|
1339 | 1340 | /*---------------------------------------------------------------------------*/
|
1340 | 1341 |
|
| 1342 | +void mesh::PolyhedralMesh:: |
| 1343 | +exchangeItems() |
| 1344 | +{ |
| 1345 | + m_trace_mng->info() << "PolyhedralMesh::_exchangeItems() do_compact?=" << "false" |
| 1346 | + << " nb_exchange=" << 0 << " version=" << 0; |
| 1347 | + _exchangeItems(); |
| 1348 | + String check_exchange = platform::getEnvironmentVariable("ARCANE_CHECK_EXCHANGE"); |
| 1349 | + if (!check_exchange.null()){ |
| 1350 | + m_mesh_checker.checkGhostCells(); |
| 1351 | + m_trace_mng->pwarning() << "CHECKING SYNCHRONISATION !"; |
| 1352 | + m_mesh_checker.checkVariablesSynchronization(); |
| 1353 | + m_mesh_checker.checkItemGroupsSynchronization(); |
| 1354 | + } |
| 1355 | + if (checkLevel()>=2) |
| 1356 | + m_mesh_checker.checkValidMesh(); |
| 1357 | + else if (checkLevel()>=1) |
| 1358 | + m_mesh_checker.checkValidConnectivity(); |
| 1359 | + |
| 1360 | +} |
| 1361 | + |
| 1362 | +/*---------------------------------------------------------------------------*/ |
| 1363 | +/*---------------------------------------------------------------------------*/ |
| 1364 | + |
| 1365 | +void mesh::PolyhedralMesh:: |
| 1366 | +_exchangeItems() |
| 1367 | +{ |
| 1368 | + ; //todo |
| 1369 | +} |
| 1370 | + |
| 1371 | +/*---------------------------------------------------------------------------*/ |
| 1372 | +/*---------------------------------------------------------------------------*/ |
| 1373 | + |
| 1374 | +void mesh::PolyhedralMesh:: |
| 1375 | +prepareForDump() |
| 1376 | +{ |
| 1377 | + // do nothing for now |
| 1378 | + auto want_dump = false; |
| 1379 | + auto need_compact = false; |
| 1380 | + m_trace_mng->info(4) << "DynamicMesh::prepareForDump() name=" << name() |
| 1381 | + << " need_compact?=" << need_compact |
| 1382 | + << " want_dump?=" << want_dump |
| 1383 | + << " timestamp=" << 0; |
| 1384 | + |
| 1385 | + { |
| 1386 | + eMeshEventType t = eMeshEventType::BeginPrepareDump; |
| 1387 | + m_mesh_events.eventObservable(t).notify(MeshEventArgs(this,t)); |
| 1388 | + } |
| 1389 | + |
| 1390 | + // todo use Properties |
| 1391 | + if (want_dump) { |
| 1392 | + for (auto& family : m_arcane_families) { |
| 1393 | + family->prepareForDump(); |
| 1394 | + } |
| 1395 | + } |
| 1396 | + |
| 1397 | + { |
| 1398 | + eMeshEventType t = eMeshEventType::EndPrepareDump; |
| 1399 | + m_mesh_events.eventObservable(t).notify(MeshEventArgs(this,t)); |
| 1400 | + } |
| 1401 | +} |
| 1402 | + |
| 1403 | +/*---------------------------------------------------------------------------*/ |
| 1404 | +/*---------------------------------------------------------------------------*/ |
| 1405 | + |
1341 | 1406 | CellGroup mesh::PolyhedralMesh::
|
1342 | 1407 | allActiveCells()
|
1343 | 1408 | {
|
@@ -1415,6 +1480,27 @@ utilities()
|
1415 | 1480 | return m_mesh_utilities.get();
|
1416 | 1481 | }
|
1417 | 1482 |
|
| 1483 | +/*---------------------------------------------------------------------------*/ |
| 1484 | +/*---------------------------------------------------------------------------*/ |
| 1485 | + |
| 1486 | +VariableItemInt32& mesh::PolyhedralMesh:: |
| 1487 | +itemsNewOwner(eItemKind ik) |
| 1488 | +{ |
| 1489 | + IItemFamily* item_family = _itemFamily(ik); |
| 1490 | + ARCANE_CHECK_POINTER(item_family); |
| 1491 | + return item_family->itemsNewOwner(); |
| 1492 | +} |
| 1493 | + |
| 1494 | +/*---------------------------------------------------------------------------*/ |
| 1495 | +/*---------------------------------------------------------------------------*/ |
| 1496 | + |
| 1497 | +Integer mesh::PolyhedralMesh:: |
| 1498 | +checkLevel() const |
| 1499 | +{ |
| 1500 | + return m_mesh_checker.checkLevel(); |
| 1501 | +} |
| 1502 | + |
| 1503 | + |
1418 | 1504 | /*---------------------------------------------------------------------------*/
|
1419 | 1505 | /*---------------------------------------------------------------------------*/
|
1420 | 1506 |
|
|
0 commit comments