X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDPartitioner%2FMEDPARTITIONER_Topology.hxx;h=c8aaa5774b8c970998b4ea92990094f1ef20259b;hb=214cb0a3e23e084616ebf247642bfbc43811e26d;hp=9ea47e8891886302aa28ad7ab156c9e8a3bf1d48;hpb=3c911ce36f5caa779ea60042e738fa57671a44b1;p=tools%2Fmedcoupling.git diff --git a/src/MEDPartitioner/MEDPARTITIONER_Topology.hxx b/src/MEDPartitioner/MEDPARTITIONER_Topology.hxx index 9ea47e889..c8aaa5774 100644 --- a/src/MEDPartitioner/MEDPARTITIONER_Topology.hxx +++ b/src/MEDPartitioner/MEDPARTITIONER_Topology.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D +// Copyright (C) 2007-2023 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 @@ -21,11 +21,12 @@ #define __MEDPARTITIONER_TOPOLOGY_HXX__ #include "MEDPARTITIONER.hxx" +#include "MCType.hxx" #include #include -namespace ParaMEDMEM +namespace MEDCoupling { class MEDCouplingUMesh; } @@ -34,7 +35,6 @@ namespace MEDPARTITIONER { class Graph; class ConnectZone; - class SkyLineArray; class MeshCollection; class MEDPARTITIONER_FaceModel; @@ -42,69 +42,71 @@ namespace MEDPARTITIONER { public: Topology() { } - Topology(std::vector, std::vector) { } + Topology(std::vector, std::vector) { } virtual ~Topology() { } /*! converts a list of global cell numbers * to a distributed array with local cell numbers */ - virtual void convertGlobalNodeList(const int *list, int nb, int *local, int*ip) = 0; - virtual void convertGlobalNodeList(const int *list, int nb, int *local, int ip) = 0; + virtual void convertGlobalNodeList(const mcIdType *list, mcIdType nb, mcIdType *local, int*ip) = 0; + virtual void convertGlobalNodeList(const mcIdType *list, mcIdType nb, mcIdType *local, int ip) = 0; //converts a list of global node numbers /*! to a distributed array with local cell numbers */ - virtual void convertGlobalCellList(const int*list , int nb, int *local, int*ip) = 0; + virtual void convertGlobalCellList(const mcIdType*list , mcIdType nb, mcIdType *local, int*ip) = 0; /*! converts a list of global face numbers * to a distributed array with local face numbers */ - virtual void convertGlobalFaceList(const int*list , int nb, int* local, int*ip) = 0; - virtual void convertGlobalFaceList(const int*list , int nb, int* local, int ip) = 0; - virtual void convertGlobalFaceListWithTwins(const int *face_list, int nbface, int*& local, int*& ip, int*& full_array, int& size) = 0; - virtual void convertGlobalNodeListWithTwins(const int *face_list, int nbnode, int*& local, int*& ip, int*& full_array, int& size) = 0; + virtual void convertGlobalFaceList(const mcIdType*list , mcIdType nb, mcIdType* local, int*ip) = 0; + virtual void convertGlobalFaceList(const mcIdType*list , mcIdType nb, mcIdType* local, int ip) = 0; + virtual void convertGlobalFaceListWithTwins(const mcIdType *face_list, mcIdType nbface, mcIdType*& local, int*& ip, mcIdType*& full_array, mcIdType& size) = 0; + virtual void convertGlobalNodeListWithTwins(const mcIdType *face_list, mcIdType nbnode, mcIdType*& local, int*& ip, mcIdType*& full_array, mcIdType& size) = 0; /*! number of doamins */ virtual int nbDomain() const = 0; /*! number of cells */ - virtual int nbCells() const = 0; + virtual mcIdType nbCells() const = 0; /*! number of nodes */ - virtual int nbNodes() const = 0; + virtual mcIdType nbNodes() const = 0; /*! number of cells on a specific domain */ - virtual int nbCells(int idomain) const = 0; + virtual mcIdType nbCells(int idomain) const = 0; /*! converting node global numberings to local numberings */ - virtual void convertToLocal2ndVersion(int*,int,int) = 0; - virtual int convertNodeToGlobal(int ip,int icell) const = 0; - virtual int convertFaceToGlobal(int ip,int icell) const = 0; - virtual int convertCellToGlobal(int ip,int icell) const = 0; - virtual void convertNodeToGlobal(int ip,const int *local, int n, int *global) const = 0; - virtual void convertCellToGlobal(int ip,const int *local, int n, int *global) const = 0; - virtual void convertFaceToGlobal(int ip,const int *local, int n, int *global) const = 0; + virtual void convertToLocal2ndVersion(mcIdType*,mcIdType,int) = 0; + virtual mcIdType convertNodeToGlobal(int ip,mcIdType icell) const = 0; + virtual mcIdType convertFaceToGlobal(int ip,mcIdType icell) const = 0; + virtual mcIdType convertCellToGlobal(int ip,mcIdType icell) const = 0; + virtual void convertNodeToGlobal(int ip,const mcIdType *local, mcIdType n, mcIdType *global) const = 0; + virtual void convertCellToGlobal(int ip,const mcIdType *local, mcIdType n, mcIdType *global) const = 0; + virtual void convertFaceToGlobal(int ip,const mcIdType *local, mcIdType n, mcIdType *global) const = 0; /*! retrieving number of nodes */ - virtual int getNodeNumber(int idomain) const = 0; - virtual int getNodeNumber() const = 0; + virtual mcIdType getNodeNumber(int idomain) const = 0; + virtual mcIdType getNodeNumber() const = 0; /*! retrieving list of nodes */ - virtual void getNodeList(int idomain, int *list) const = 0; - virtual std::vector & getFusedCellNumbers(int idomain) = 0; - virtual const std::vector & getFusedCellNumbers(int idomain) const = 0; - virtual std::vector & getFusedFaceNumbers(int idomain) = 0; - virtual const std::vector & getFusedFaceNumbers(int idomain) const = 0; + virtual void getNodeList(int idomain, mcIdType *list) const = 0; + virtual std::vector & getFusedCellNumbers(int idomain) = 0; + virtual const std::vector & getFusedCellNumbers(int idomain) const = 0; + virtual std::vector & getFusedFaceNumbers(int idomain) = 0; + virtual const std::vector & getFusedFaceNumbers(int idomain) const = 0; /*! retrieving number of nodes */ - virtual int getCellNumber(int idomain) const = 0; + virtual mcIdType getCellNumber(int idomain) const = 0; /*! retrieving list of nodes */ - virtual void getCellList(int idomain, int *list) const = 0; + virtual void getCellList(int idomain, mcIdType *list) const = 0; /*! retrieving number of faces */ - virtual int getFaceNumber(int idomain) const = 0; - virtual int getFaceNumber() const = 0; + virtual mcIdType getFaceNumber(int idomain) const = 0; + virtual mcIdType getFaceNumber() const = 0; /*! retrieving list of nodes */ - virtual void getFaceList(int idomain, int *list) const = 0; + virtual void getFaceList(int idomain, mcIdType *list) const = 0; /*! adding a face to the mapping */ - virtual void appendFace(int idomain, int ilocal, int iglobal) = 0; + virtual void appendFace(int idomain, mcIdType ilocal, mcIdType iglobal) = 0; /*! returns max global face number */ - virtual int getMaxGlobalFace() const = 0; + virtual mcIdType getMaxGlobalFace() const = 0; /*! converting a global cell number to a local representation */ - virtual std::pair convertGlobalCell(int iglobal) const = 0; + virtual std::pair convertGlobalCell(mcIdType iglobal) const = 0; /*! converting a global face number to a local representation */ - virtual int convertGlobalFace(int iglobal, int idomain) = 0; + virtual mcIdType convertGlobalFace(mcIdType iglobal, int idomain) = 0; /*! converting a global node number to a local representation */ - virtual int convertGlobalNode(int iglobal, int idomain) = 0; + virtual mcIdType convertGlobalNode(mcIdType iglobal, int idomain) = 0; + /*! getting a reference to connect zones vector */ + virtual std::vector& getCZ() = 0; }; }