Changeset 2146


Ignore:
Timestamp:
06/04/21 11:57:21 (3 years ago)
Author:
yushan
Message:

Big commit on graph functionality. Other graph related dev

Location:
XIOS/dev/dev_ym/XIOS_COUPLING/src
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute.hpp

    r1622 r2146  
    4242            virtual void fromString(const StdString & str) = 0; 
    4343            virtual StdString dump(void) const = 0; 
     44            virtual StdString dumpGraph(void) const = 0; 
    4445            virtual bool isEqual(const CAttribute& ) = 0; 
    4546 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute_array.hpp

    r2120 r2146  
    5555            virtual bool fromBuffer(CBufferIn& buffer) { return _fromBuffer(buffer); } 
    5656            virtual string dump(void) const { return _dump();} 
     57            virtual string dumpGraph(void) const { return _dumpGraph();} 
    5758 
    5859            virtual void generateCInterface(ostream& oss,const string& className) ; 
     
    7071          StdString _toString(void) const; 
    7172          StdString _dump(void) const; 
     73          StdString _dumpGraph(void) const; 
    7274          void _fromString(const StdString & str); 
    7375          bool _toBuffer  (CBufferOut& buffer) const; 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute_array_impl.hpp

    r2120 r2146  
    137137      return (oss.str()); 
    138138    } 
     139     
     140    template <typename T_numtype, int N_rank> 
     141    StdString CAttributeArray<T_numtype,N_rank>::_dumpGraph(void) const 
     142    { 
     143      StdOStringStream oss; 
     144      if (! isEmpty() && this->hasId() && (this->numElements()!=0)) 
     145        oss << this->getName() << "=" << CArray<T_numtype, N_rank>::dump() << ""; 
     146      return (oss.str()); 
     147    } 
    139148 
    140149 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute_enum.hpp

    r1622 r2146  
    6363            virtual void fromString(const StdString & str) { if (str==resetInheritanceStr) { reset(); _canInherite=false ;}  else _fromString(str);} 
    6464            virtual StdString dump(void) const { return _toString();} 
     65            virtual StdString dumpGraph(void) const { return _dumpGraph();} 
    6566 
    6667            virtual bool toBuffer  (CBufferOut& buffer) const { return _toBuffer(buffer);}  
     
    8384          bool _fromBuffer(CBufferIn& buffer) ; 
    8485          CEnum<T> inheritedValue ; 
     86          StdString _dumpGraph(void) const; 
    8587      }; // class CAttributeEnum     
    8688    
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute_enum_impl.hpp

    r1219 r2146  
    214214    CInterface::AttributeFortranInterfaceGetDeclaration<string>(oss, className, this->getName()); 
    215215  } 
     216   
     217  template <class T> 
     218  StdString CAttributeEnum<T>::_dumpGraph(void) const 
     219  { 
     220     StdOStringStream oss; 
     221     if (!CEnum<T>::isEmpty() && this->hasId()) 
     222        oss << this->getName() << "=" << CEnum<T>::toString() << "</br>"; 
     223     return (oss.str()); 
     224  } 
    216225} // namespace xios 
    217226 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute_map.cpp

    r1622 r2146  
    5959      } 
    6060 
     61      ///-------------------------------------------------------------- 
     62      /*! 
     63        Record all non-empty attributes of an object (used only for field) for graph 
     64      */ 
     65      StdString CAttributeMap::recordXiosAttributes(void) const 
     66      { 
     67        StdString str; 
     68        typedef std::pair<StdString, CAttribute*> StdStrAttPair; 
     69        auto it = SuperClassMap::begin(), end = SuperClassMap::end(); 
     70        for (; it != end; it++) 
     71        { 
     72          const StdStrAttPair& att = *it; 
     73          if (!att.second->isEmpty()) 
     74          { 
     75            str.append(att.second->dumpGraph()); 
     76            str.append(" "); 
     77          } 
     78        } 
     79        return str; 
     80      } 
     81 
    6182      //--------------------------------------------------------------- 
    6283 
    6384      /* 
    64         Clear an attribute and reset its value 
     85        Cleassr an attribute and reset its value 
    6586        \param[in] key id of attribute 
    6687      */ 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute_map.hpp

    r1622 r2146  
    3939            void clearAllAttributes(void); 
    4040            StdString dumpXiosAttributes(void) const; 
     41            StdString recordXiosAttributes(void) const; 
    4142 
    4243            void clearAttribute(const StdString& key); 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute_template.hpp

    r2120 r2146  
    7575//            virtual void fromBinary(StdIStream & is); 
    7676            virtual StdString dump(void) const { return _dump();} 
     77            virtual StdString dumpGraph(void) const { return _dumpGraph();} 
    7778 
    7879            virtual bool toBuffer  (CBufferOut& buffer) const { return _toBuffer(buffer);} 
     
    100101          StdString _toString(void) const; 
    101102          StdString _dump(void) const; 
     103          StdString _dumpGraph(void) const; 
    102104          void _fromString(const StdString & str); 
    103105          bool _toBuffer  (CBufferOut& buffer) const; 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/attribute_template_impl.hpp

    r1622 r2146  
    208208         if (!CType<T>::isEmpty() && this->hasId()) 
    209209            oss << this->getName() << "=\"" << CType<T>::dump() << "\""; 
     210         return (oss.str()); 
     211      } 
     212       
     213      template <class T> 
     214         StdString CAttributeTemplate<T>::_dumpGraph(void) const 
     215      { 
     216         StdOStringStream oss; 
     217         if (!CType<T>::isEmpty() && this->hasId()) 
     218            oss << this->getName() << "=" << CType<T>::dump() << "</br>"; 
    210219         return (oss.str()); 
    211220      } 
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/client.cpp

    r1765 r2146  
    1616#include <functional> 
    1717#include <cstdio> 
    18  
     18#include "workflow_graph.hpp" 
    1919 
    2020namespace xios 
     
    508508      report(100)<<CTimer::getAllCumulatedTime()<<endl ; 
    509509     
    510        
     510      CWorkflowGraph::drawWorkFlowGraph_client(); 
    511511    } 
    512512     
  • XIOS/dev/dev_ym/XIOS_COUPLING/src/server.cpp

    r1765 r2146  
    2020#include "servers_ressource.hpp" 
    2121#include <cstdio> 
    22  
     22#include "workflow_graph.hpp" 
    2323 
    2424 
     
    318318      report(0)<<"Performance report : Ratio : "<<CTimer::get("Process events").getCumulatedTime()/CTimer::get("XIOS server").getCumulatedTime()*100.<<"%"<<endl  ; 
    319319      report(100)<<CTimer::getAllCumulatedTime()<<endl ; 
     320 
     321      CWorkflowGraph::drawWorkFlowGraph_server(); 
    320322    } 
    321323 
Note: See TracChangeset for help on using the changeset viewer.