Ignore:
Timestamp:
12/07/21 12:07:33 (3 years ago)
Author:
ymipsl
Message:

Tracking memory leak :
Tranformations and algorithms are now managed with shared_ptr.

YM

Location:
XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_compute_connectivity.cpp

    r2011 r2270  
    1515 
    1616namespace xios { 
    17 CGenericAlgorithmTransformation* CDomainAlgorithmComputeConnectivity::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     17shared_ptr<CGenericAlgorithmTransformation> CDomainAlgorithmComputeConnectivity::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    1818                                                                     CTransformation<CDomain>* transformation, 
    1919                                                                     int elementPositionInGrid, 
     
    3333  int domainSrcIndex = elementPositionInGridSrc2DomainPosition[elementPositionInGrid]; 
    3434 
    35   return (new CDomainAlgorithmComputeConnectivity(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], compute_connectivityDomain)); 
     35  return make_shared<CDomainAlgorithmComputeConnectivity>(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], compute_connectivityDomain); 
    3636} 
    3737CATCH 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_compute_connectivity.hpp

    r2011 r2270  
    3737 
    3838public: 
    39   static CGenericAlgorithmTransformation* create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     39  static shared_ptr<CGenericAlgorithmTransformation> create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    4040                                                CTransformation<CDomain>* transformation, 
    4141                                                int elementPositionInGrid, 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_expand.cpp

    r1998 r2270  
    1717 
    1818namespace xios { 
    19 CGenericAlgorithmTransformation* CDomainAlgorithmExpand::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     19shared_ptr<CGenericAlgorithmTransformation> CDomainAlgorithmExpand::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    2020                                                               CTransformation<CDomain>* transformation, 
    2121                                                               int elementPositionInGrid, 
     
    3535  int domainSrcIndex = elementPositionInGridSrc2DomainPosition[elementPositionInGrid]; 
    3636 
    37   return (new CDomainAlgorithmExpand(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], expandDomain)); 
     37  return make_shared<CDomainAlgorithmExpand>(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], expandDomain); 
    3838} 
    3939CATCH 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_expand.hpp

    r2145 r2270  
    4646 
    4747public: 
    48   static CGenericAlgorithmTransformation* create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     48  static shared_ptr<CGenericAlgorithmTransformation> create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    4949                                                CTransformation<CDomain>* transformation, 
    5050                                                int elementPositionInGrid, 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_extract.cpp

    r2232 r2270  
    77 
    88namespace xios { 
    9 CGenericAlgorithmTransformation* CDomainAlgorithmExtract::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     9shared_ptr<CGenericAlgorithmTransformation> CDomainAlgorithmExtract::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    1010                                                             CTransformation<CDomain>* transformation, 
    1111                                                             int elementPositionInGrid, 
     
    2525  int domainSrcIndex = elementPositionInGridSrc2DomainPosition[elementPositionInGrid]; 
    2626 
    27   return (new CDomainAlgorithmExtract(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], extractDomain)); 
     27  return make_shared<CDomainAlgorithmExtract>(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], extractDomain); 
    2828} 
    2929CATCH 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_extract.hpp

    r2145 r2270  
    4343 
    4444public: 
    45   static CGenericAlgorithmTransformation* create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     45  static shared_ptr<CGenericAlgorithmTransformation> create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    4646                                                CTransformation<CDomain>* transformation, 
    4747                                                int elementPositionInGrid, 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_generate_rectilinear.cpp

    r2016 r2270  
    1818 
    1919 
    20 CGenericAlgorithmTransformation* CDomainAlgorithmGenerateRectilinear::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     20shared_ptr<CGenericAlgorithmTransformation> CDomainAlgorithmGenerateRectilinear::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    2121                                                                     CTransformation<CDomain>* transformation, 
    2222                                                                     int elementPositionInGrid, 
     
    3636  int domainSrcIndex = elementPositionInGridSrc2DomainPosition[elementPositionInGrid]; 
    3737 
    38   return (new CDomainAlgorithmGenerateRectilinear(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], gridDst, gridSrc, transform)); 
     38  return make_shared<CDomainAlgorithmGenerateRectilinear>(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], gridDst, gridSrc, transform); 
    3939} 
    4040CATCH 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_generate_rectilinear.hpp

    r2145 r2270  
    4545 
    4646public: 
    47   static CGenericAlgorithmTransformation* create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     47  static shared_ptr<CGenericAlgorithmTransformation> create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    4848                                                CTransformation<CDomain>* transformation, 
    4949                                                int elementPositionInGrid, 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_interpolate.cpp

    r2006 r2270  
    2222 
    2323namespace xios { 
    24 CGenericAlgorithmTransformation* CDomainAlgorithmInterpolate::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     24shared_ptr<CGenericAlgorithmTransformation> CDomainAlgorithmInterpolate::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    2525                                                                     CTransformation<CDomain>* transformation, 
    2626                                                                     int elementPositionInGrid, 
     
    4040  int domainSrcIndex = elementPositionInGridSrc2DomainPosition[elementPositionInGrid]; 
    4141 
    42   return (new CDomainAlgorithmInterpolate(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], interpolateDomain)); 
     42  return make_shared<CDomainAlgorithmInterpolate>(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], interpolateDomain); 
    4343} 
    4444CATCH 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_interpolate.hpp

    r2145 r2270  
    8787public: 
    8888 
    89   static CGenericAlgorithmTransformation* create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     89  static shared_ptr<CGenericAlgorithmTransformation> create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    9090                                                CTransformation<CDomain>* transformation, 
    9191                                                int elementPositionInGrid, 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_reorder.cpp

    r2226 r2270  
    1010 
    1111namespace xios { 
    12 CGenericAlgorithmTransformation* CDomainAlgorithmReorder::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     12shared_ptr<CGenericAlgorithmTransformation> CDomainAlgorithmReorder::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    1313                                                             CTransformation<CDomain>* transformation, 
    1414                                                             int elementPositionInGrid, 
     
    2828  int domainSrcIndex = elementPositionInGridSrc2DomainPosition[elementPositionInGrid]; 
    2929 
    30   return (new CDomainAlgorithmReorder(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], reorderDomain)); 
     30  return make_shared<CDomainAlgorithmReorder>(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], reorderDomain); 
    3131} 
    3232CATCH 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_reorder.hpp

    r2145 r2270  
    3030   
    3131    public: 
    32       static CGenericAlgorithmTransformation* create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     32      static shared_ptr<CGenericAlgorithmTransformation> create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    3333                                                     CTransformation<CDomain>* transformation, 
    3434                                                     int elementPositionInGrid, 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_zoom.cpp

    r1998 r2270  
    77 
    88namespace xios { 
    9 CGenericAlgorithmTransformation* CDomainAlgorithmZoom::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     9shared_ptr<CGenericAlgorithmTransformation> CDomainAlgorithmZoom::create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    1010                                                             CTransformation<CDomain>* transformation, 
    1111                                                             int elementPositionInGrid, 
     
    2525  int domainSrcIndex = elementPositionInGridSrc2DomainPosition[elementPositionInGrid]; 
    2626 
    27   return (new CDomainAlgorithmZoom(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], zoomDomain)); 
     27  return make_shared<CDomainAlgorithmZoom>(isSource, domainListDestP[domainDstIndex], domainListSrcP[domainSrcIndex], zoomDomain); 
    2828} 
    2929CATCH 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/transformation/domain_algorithm/domain_algorithm_zoom.hpp

    r2011 r2270  
    4646 
    4747public: 
    48   static CGenericAlgorithmTransformation* create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
     48  static shared_ptr<CGenericAlgorithmTransformation> create(bool isSource, CGrid* gridDst, CGrid* gridSrc, 
    4949                                                CTransformation<CDomain>* transformation, 
    5050                                                int elementPositionInGrid, 
Note: See TracChangeset for help on using the changeset viewer.