MOTION  0.01
Framework for mixed-protocol multi-party computation
Public Member Functions | List of all members
encrypto::motion::proto::boolean_gmw::Wire Class Referencefinal

#include <boolean_gmw_wire.h>

Inheritance diagram for encrypto::motion::proto::boolean_gmw::Wire:
Inheritance graph
[legend]
Collaboration diagram for encrypto::motion::proto::boolean_gmw::Wire:
Collaboration graph
[legend]

Public Member Functions

 Wire (Backend &backend, size_t number_of_simd)
 
 Wire (BitVector<> &&values, Backend &backend)
 
 Wire (const BitVector<> &values, Backend &backend)
 
 Wire (bool value, Backend &backend)
 
 ~Wire () final=default
 
MpcProtocol GetProtocol () const final
 
 Wire ()=delete
 
 Wire (Wire &)=delete
 
std::size_t GetBitLength () const final
 
const BitVectorGetValues () const
 
BitVectorGetMutableValues ()
 
bool IsConstant () const noexcept final
 
- Public Member Functions inherited from encrypto::motion::BooleanWire
 ~BooleanWire () override=default
 
CircuitType GetCircuitType () const final
 
 BooleanWire (BooleanWire &)=delete
 
- Public Member Functions inherited from encrypto::motion::Wire
std::size_t GetNumberOfSimdValues () const
 
void RegisterWaitingGate (std::size_t gate_id)
 
void SetOnlineFinished ()
 
const auto & GetWaitingGatesIds () const noexcept
 
const std::atomic< bool > & IsReady () const noexcept
 
const FiberConditionGetIsReadyCondition () const noexcept
 
std::size_t GetWireId () const
 
BackendGetBackend () const
 
void Clear ()
 
 Wire (const Wire &)=delete
 

Additional Inherited Members

- Static Public Member Functions inherited from encrypto::motion::Wire
static std::string PrintIds (const std::vector< std::shared_ptr< Wire >> &wires)
 
- Protected Member Functions inherited from encrypto::motion::BooleanWire
 BooleanWire (Backend &backend, std::size_t number_of_simd)
 
- Protected Member Functions inherited from encrypto::motion::Wire
 Wire (Backend &backend, std::size_t number_of_simd)
 
virtual void DynamicClear ()
 
- Static Protected Member Functions inherited from encrypto::motion::Wire
static void SignalReadyToDependency (std::size_t gate_id, Backend &backend)
 
- Protected Attributes inherited from encrypto::motion::Wire
Backendbackend_
 
std::size_t n_simd_ = 0
 Number of values that are logically processed in parallel. More...
 
std::atomic< bool > is_done_ = false
 
FiberCondition is_done_condition_
 
std::int64_t wire_id_ = -1
 
std::unordered_set< std::size_t > waiting_gate_ids_
 

Constructor & Destructor Documentation

◆ Wire() [1/6]

encrypto::motion::proto::boolean_gmw::Wire::Wire ( Backend backend,
size_t  number_of_simd 
)

◆ Wire() [2/6]

encrypto::motion::proto::boolean_gmw::Wire::Wire ( BitVector<> &&  values,
Backend backend 
)
explicit

◆ Wire() [3/6]

encrypto::motion::proto::boolean_gmw::Wire::Wire ( const BitVector<> &  values,
Backend backend 
)
explicit

◆ Wire() [4/6]

encrypto::motion::proto::boolean_gmw::Wire::Wire ( bool  value,
Backend backend 
)
explicit
Here is the call graph for this function:

◆ ~Wire()

encrypto::motion::proto::boolean_gmw::Wire::~Wire ( )
finalvirtualdefault

Reimplemented from encrypto::motion::Wire.

◆ Wire() [5/6]

encrypto::motion::proto::boolean_gmw::Wire::Wire ( )
delete

◆ Wire() [6/6]

encrypto::motion::proto::boolean_gmw::Wire::Wire ( Wire )
delete

Member Function Documentation

◆ GetBitLength()

std::size_t encrypto::motion::proto::boolean_gmw::Wire::GetBitLength ( ) const
inlinefinalvirtual

◆ GetMutableValues()

BitVector& encrypto::motion::proto::boolean_gmw::Wire::GetMutableValues ( )
inline

◆ GetProtocol()

MpcProtocol encrypto::motion::proto::boolean_gmw::Wire::GetProtocol ( ) const
inlinefinalvirtual

◆ GetValues()

const BitVector& encrypto::motion::proto::boolean_gmw::Wire::GetValues ( ) const
inline

◆ IsConstant()

bool encrypto::motion::proto::boolean_gmw::Wire::IsConstant ( ) const
inlinefinalvirtualnoexcept

The documentation for this class was generated from the following files: