Ignore:
Timestamp:
09/16/22 15:20:24 (21 months ago)
Author:
ymipsl
Message:

Refactor service manager notification
YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS3/trunk/src/manager/services_manager.hpp

    r2335 r2403  
    2121    static const int CLIENT=0 ; 
    2222    static const int GATHERER=1 ; 
    23     static const int IO_SERVER=2 ; 
    24     static const int OUT_SERVER=3 ; 
    25     static const int ALL_SERVICES=4 ; 
     23    static const int WRITER=2 ; 
     24    static const int READER=3 ; 
     25    static const int IO_SERVER=4 ; 
     26    static const int OUT_SERVER=5 ; 
     27    static const int ALL_SERVICES=6 ; 
    2628 
     29    private: 
     30    const int NOTIFY_NOTHING=0 ; 
     31    const int NOTIFY_CREATE_SERVICE=1 ; 
     32    const int NOTIFY_CREATE_SERVICE_ONTO=2 ; 
     33     
    2734    public: 
    2835     
     
    3138     
    3239    bool createServices(const std::string& poolId, const std::string& serviceId, int type, int size, int nbPartition, bool wait=true) ; 
    33     void createServicesNotify(int rank, const string& serviceId, int type, int size, int nbPartitions) ; 
    34     void checkCreateServicesNotification(void) ; 
     40    bool createServicesOnto(const std::string& poolId, const std::string& serviceId, const std::string& onServiceId, bool wait=true) ; 
     41     
    3542    void eventLoop(void) ; 
    36     void notificationsDumpOut(CBufferOut& buffer) ; 
    37     void notificationsDumpIn(CBufferIn& buffer) ; 
    3843     
    3944    void registerService(const std::string& poolId, const std::string& serviceId, const int& partitionId, int type, int size, int nbPartitions, int leader) ; 
     
    4550    void servicesDumpOut(CBufferOut& buffer) ; 
    4651    void servicesDumpIn(CBufferIn& buffer) ; 
    47      
     52 
     53    private: 
     54 
     55    void createService(void) ; 
     56    void createServiceOnto(void) ;     
     57    void createServicesNotify(int rank, const string& serviceId, int type, int size, int nbPartitions) ; 
     58    void createServicesOntoNotify(int rank, const string& serviceId, const string& OnServiceId) ; 
     59    void sendNotification(int rank) ; 
     60    void checkNotifications(void) ; 
     61    void notificationsDumpOut(CBufferOut& buffer) ; 
     62    void notificationsDumpIn(CBufferIn& buffer) ; 
     63 
    4864 
    4965    private : 
     
    5571    MPI_Comm xiosComm_ ; 
    5672 
    57     std::list<std::tuple<std::string, int, int, int> > notifications_; 
    58      
     73    int notifyType_ ; 
     74    tuple<std::string, int, int, int> notifyCreateService_ ; 
     75    tuple<std::string, std::string> notifyCreateServiceOnto_ ; 
     76    
    5977    std::map<tuple<std::string, std::string, int>, std::tuple<int, int, int, int> > services_ ; 
    6078 
Note: See TracChangeset for help on using the changeset viewer.