The subset of a View associated with a single shard, or a single subgroup if the subgroup is non-sharded.  
 More...
#include <view.hpp>
 | 
| int  | rank_of (const node_id_t &who) const | 
|   | Looks up the sub-view rank of a node ID.  More...
  | 
|   | 
| int  | sender_rank_of (uint32_t rank) const | 
|   | Looks up the sender rank of a given member.  More...
  | 
|   | 
| uint32_t  | num_senders () const | 
|   | returns the number of senders in the subview  More...
  | 
|   | 
|   | SubView (int32_t num_members) | 
|   | Creates an empty new SubView with num_members members.  More...
  | 
|   | 
|   | DEFAULT_SERIALIZATION_SUPPORT (SubView, mode, members, is_sender, member_ips_and_ports, joined, departed, profile) | 
|   | 
|   | SubView (Mode mode, const std::vector< node_id_t > &members, std::vector< int > is_sender, const std::vector< std::tuple< ip_addr_t, uint16_t, uint16_t, uint16_t, uint16_t >> &member_ips_and_ports, const std::vector< node_id_t > &joined, const std::vector< node_id_t > &departed, const std::string &profile) | 
|   | 
|   | SubView (Mode mode, const std::vector< node_id_t > &members, std::vector< int > is_sender, const std::vector< std::tuple< ip_addr_t, uint16_t, uint16_t, uint16_t, uint16_t >> &member_ips_and_ports, std::string profile) | 
|   | 
| void  | init_joined_departed (const SubView &previous_subview) | 
|   | Initialization helper method that initializes the joined and departed lists given the previous View's version of this SubView.  More...
  | 
|   | 
| virtual std::size_t  | to_bytes (char *v) const =0 | 
|   | Write this class's marshalled representation into the array found at v.  More...
  | 
|   | 
| virtual void  | post_object (const std::function< void(char const *const, std::size_t)> &) const =0 | 
|   | Pass a pointer to a buffer containing this class's marshalled representation into the function f.  More...
  | 
|   | 
| virtual std::size_t  | bytes_size () const =0 | 
|   | the size of the marshalled representation of this object.  More...
  | 
|   | 
| virtual  | ~ByteRepresentable () | 
|   | 
 | 
| Mode  | mode | 
|   | Operation mode, raw mode does not do stability and delivery.  More...
  | 
|   | 
| std::vector< node_id_t >  | members | 
|   | Node IDs of members in this subgroup/shard, indexed by their order in the SST.  More...
  | 
|   | 
| std::vector< int >  | is_sender | 
|   | vector selecting the senders, 0 for non-sender, non-0 for sender  More...
  | 
|   | 
| std::vector< std::tuple< ip_addr_t, uint16_t, uint16_t, uint16_t, uint16_t > >  | member_ips_and_ports | 
|   | IP addresses and ports of members in this subgroup/shard, with the same indices as members.  More...
  | 
|   | 
| std::vector< node_id_t >  | joined | 
|   | List of IDs of nodes that joined since the previous view, if any.  More...
  | 
|   | 
| std::vector< node_id_t >  | departed | 
|   | List of IDs of nodes that left since the previous view, if any.  More...
  | 
|   | 
| int32_t  | my_rank | 
|   | The rank of this node within the subgroup/shard, or -1 if this node is not a member of the subgroup/shard.  More...
  | 
|   | 
| const std::string  | profile | 
|   | Settings for the subview.  More...
  | 
|   | 
The subset of a View associated with a single shard, or a single subgroup if the subgroup is non-sharded. 
Definition at line 31 of file view.hpp.
 
◆ SubView() [1/3]
      
        
          | derecho::SubView::SubView  | 
          ( | 
          int32_t  | 
          num_members | ) | 
           | 
        
      
 
Creates an empty new SubView with num_members members. 
The vectors will have room for num_members elements. 
Definition at line 15 of file view.cpp.
 
 
◆ SubView() [2/3]
  
  
      
        
          | derecho::SubView::SubView  | 
          ( | 
          Mode  | 
          mode,  | 
         
        
           | 
           | 
          const std::vector< node_id_t > &  | 
          members,  | 
         
        
           | 
           | 
          std::vector< int >  | 
          is_sender,  | 
         
        
           | 
           | 
          const std::vector< std::tuple< ip_addr_t, uint16_t, uint16_t, uint16_t, uint16_t >> &  | 
          member_ips_and_ports,  | 
         
        
           | 
           | 
          const std::vector< node_id_t > &  | 
          joined,  | 
         
        
           | 
           | 
          const std::vector< node_id_t > &  | 
          departed,  | 
         
        
           | 
           | 
          const std::string &  | 
          profile  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
 
◆ SubView() [3/3]
      
        
          | derecho::SubView::SubView  | 
          ( | 
          Mode  | 
          mode,  | 
        
        
           | 
           | 
          const std::vector< node_id_t > &  | 
          members,  | 
        
        
           | 
           | 
          std::vector< int >  | 
          is_sender,  | 
        
        
           | 
           | 
          const std::vector< std::tuple< ip_addr_t, uint16_t, uint16_t, uint16_t, uint16_t >> &  | 
          member_ips_and_ports,  | 
        
        
           | 
           | 
          std::string  | 
          profile  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
 
◆ DEFAULT_SERIALIZATION_SUPPORT()
◆ init_joined_departed()
      
        
          | void derecho::SubView::init_joined_departed  | 
          ( | 
          const SubView &  | 
          previous_subview | ) | 
           | 
        
      
 
Initialization helper method that initializes the joined and departed lists given the previous View's version of this SubView. 
This should be called after using the fewer-parameters constructor to finish setting up the SubView. 
- Parameters
 - 
  
    | previous_subview | The previous SubView to compare against  | 
  
   
Definition at line 76 of file view.cpp.
 
 
◆ num_senders()
      
        
          | uint32_t derecho::SubView::num_senders  | 
          ( | 
           | ) | 
           const | 
        
      
 
returns the number of senders in the subview 
Definition at line 66 of file view.cpp.
 
 
◆ rank_of()
      
        
          | int derecho::SubView::rank_of  | 
          ( | 
          const node_id_t &  | 
          who | ) | 
           const | 
        
      
 
Looks up the sub-view rank of a node ID. 
Returns -1 if that node ID is not a member of this subgroup/shard. 
Definition at line 44 of file view.cpp.
 
 
◆ sender_rank_of()
      
        
          | int derecho::SubView::sender_rank_of  | 
          ( | 
          uint32_t  | 
          rank | ) | 
           const | 
        
      
 
Looks up the sender rank of a given member. 
Returns -1 if the member isn't a sender 
Definition at line 53 of file view.cpp.
 
 
◆ departed
      
        
          | std::vector<node_id_t> derecho::SubView::departed | 
        
      
 
List of IDs of nodes that left since the previous view, if any. 
Definition at line 45 of file view.hpp.
 
 
◆ is_sender
      
        
          | std::vector<int> derecho::SubView::is_sender | 
        
      
 
vector selecting the senders, 0 for non-sender, non-0 for sender 
integers instead of booleans due to the serialization issue :-/ 
Definition at line 39 of file view.hpp.
 
 
◆ joined
      
        
          | std::vector<node_id_t> derecho::SubView::joined | 
        
      
 
List of IDs of nodes that joined since the previous view, if any. 
Definition at line 43 of file view.hpp.
 
 
◆ member_ips_and_ports
      
        
          | std::vector<std::tuple<ip_addr_t, uint16_t, uint16_t, uint16_t, uint16_t> > derecho::SubView::member_ips_and_ports | 
        
      
 
IP addresses and ports of members in this subgroup/shard, with the same indices as members. 
Definition at line 41 of file view.hpp.
 
 
◆ members
      
        
          | std::vector<node_id_t> derecho::SubView::members | 
        
      
 
Node IDs of members in this subgroup/shard, indexed by their order in the SST. 
Definition at line 36 of file view.hpp.
 
 
◆ mode
      
        
          | Mode derecho::SubView::mode | 
        
      
 
Operation mode, raw mode does not do stability and delivery. 
Definition at line 34 of file view.hpp.
 
 
◆ my_rank
      
        
          | int32_t derecho::SubView::my_rank | 
        
      
 
The rank of this node within the subgroup/shard, or -1 if this node is not a member of the subgroup/shard. 
This is initialized by ViewManager, not the subgroup allocation functions that create SubViews. 
Definition at line 49 of file view.hpp.
 
 
◆ profile
      
        
          | const std::string derecho::SubView::profile | 
        
      
 
Settings for the subview. 
Definition at line 51 of file view.hpp.
 
 
The documentation for this class was generated from the following files: