#include <ckpttn/FMKWayGainMgr.hpp>
          template<typename Gnl>
          FMKWayGainMgr class
        
        
        | Template parameters | |
|---|---|
| Gnl | Generalized Netlist | 
Base classes
- 
              template<typename Gnl, typename GainCalc, class Derived>class FMGainMgr<Gnl, FMKWayGainCalc<Gnl>, FMKWayGainMgr<Gnl>>
 
Public types
- using Base = FMGainMgr<Gnl, FMKWayGainCalc<Gnl>, FMKWayGainMgr<Gnl>>
 - using GainCalc_ = FMKWayGainCalc<Gnl>
 - using node_t = typename Gnl::node_t
 
Constructors, destructors, conversion operators
- FMKWayGainMgr(const Gnl& hyprgraph, std::uint8_t num_parts)
 - Constructs a new FMKWayGainMgr object.
 
Public functions
- auto init(std::span<const std::uint8_t> part) -> int -> auto
 - Initializes the gain manager with the given partition information.
 - 
              auto modify_key(const node_
t& w, std::uint8_t part_w, std::span<const int> keys) -> void -> auto  - Modifies the key for the given vertex in the gain buckets for all partitions except the given one.
 - 
              auto update_move_v(const MoveInfoV<node_
t>& move_info_v, int gain) -> void -> auto  - Updates the move information for a vertex.
 - 
              auto lock(uint8_t whichPart,
              const node_
t& v) -> void -> auto  - Locks the vertex link for the given partition and vertex.
 - 
              auto lock_all(uint8_t,
              const node_
t& v) -> void -> auto  - Locks the vertex link for the given vertex in all partitions.
 
Function documentation
              
                template<typename Gnl>
              
               FMKWayGainMgr<Gnl>:: FMKWayGainMgr(const Gnl& hyprgraph,
              std::uint8_t num_parts)
            
            Constructs a new FMKWayGainMgr object.
| Parameters | |
|---|---|
| hyprgraph in | The hypergraph to use. | 
| num_parts in | The number of partitions. | 
              
                template<typename Gnl>
              
              auto FMKWayGainMgr<Gnl>:: init(std::span<const std::uint8_t> part) -> int
            
            Initializes the gain manager with the given partition information.
| Parameters | |
|---|---|
| part in | The partition information to initialize the gain manager with. | 
| Returns | int The result of the initialization. | 
              
                template<typename Gnl>
              
              auto FMKWayGainMgr<Gnl>:: modify_key(const node_ t& w,
              std::uint8_t part_w,
              std::span<const int> keys) -> void
            
            Modifies the key for the given vertex in the gain buckets for all partitions except the given one.
| Parameters | |
|---|---|
| w in | The vertex to modify the key for. | 
| part_w in | The partition that the vertex belongs to. | 
| keys in | The new keys to set for the vertex in each partition. | 
              
                template<typename Gnl>
              
              auto FMKWayGainMgr<Gnl>:: update_move_v(const MoveInfoV<node_ t>& move_info_v,
              int gain) -> void
            
            Updates the move information for a vertex.
| Parameters | |
|---|---|
| move_info_v in | The move information for the vertex. | 
| gain in | The gain associated with the move. |