MOTION  0.01
Framework for mixed-protocol multi-party computation
Public Types | Public Member Functions | List of all members
encrypto::motion::proto::ConstantArithmeticWire< T > Class Template Referencefinal

#include <constant_wire.h>

Inheritance diagram for encrypto::motion::proto::ConstantArithmeticWire< T >:
Inheritance graph
[legend]
Collaboration diagram for encrypto::motion::proto::ConstantArithmeticWire< T >:
Collaboration graph
[legend]

Public Types

using value_type = T
 

Public Member Functions

 ConstantArithmeticWire (Backend &backend, std::size_t number_of_simd)
 
 ConstantArithmeticWire (std::vector< T > &&values, Backend &backend)
 
 ConstantArithmeticWire (const std::vector< T > &values, Backend &backend)
 
 ConstantArithmeticWire (T t, Backend &backend)
 
 ~ConstantArithmeticWire () final=default
 
MpcProtocol GetProtocol () const final
 
CircuitType GetCircuitType () const final
 
const std::vector< T > & GetValues () const
 
std::vector< T > & GetMutableValues ()
 
std::size_t GetBitLength () const final
 
bool IsConstant () const noexcept final
 
- Public Member Functions inherited from encrypto::motion::Wire
std::size_t GetNumberOfSimdValues () const
 
virtual ~Wire ()
 
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::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_
 

Member Typedef Documentation

◆ value_type

template<typename T >
using encrypto::motion::proto::ConstantArithmeticWire< T >::value_type = T

Constructor & Destructor Documentation

◆ ConstantArithmeticWire() [1/4]

template<typename T >
encrypto::motion::proto::ConstantArithmeticWire< T >::ConstantArithmeticWire ( Backend backend,
std::size_t  number_of_simd 
)
inline

◆ ConstantArithmeticWire() [2/4]

template<typename T >
encrypto::motion::proto::ConstantArithmeticWire< T >::ConstantArithmeticWire ( std::vector< T > &&  values,
Backend backend 
)
inline

◆ ConstantArithmeticWire() [3/4]

template<typename T >
encrypto::motion::proto::ConstantArithmeticWire< T >::ConstantArithmeticWire ( const std::vector< T > &  values,
Backend backend 
)
inline

◆ ConstantArithmeticWire() [4/4]

template<typename T >
encrypto::motion::proto::ConstantArithmeticWire< T >::ConstantArithmeticWire ( t,
Backend backend 
)
inline

◆ ~ConstantArithmeticWire()

template<typename T >
encrypto::motion::proto::ConstantArithmeticWire< T >::~ConstantArithmeticWire ( )
finaldefault

Member Function Documentation

◆ GetBitLength()

template<typename T >
std::size_t encrypto::motion::proto::ConstantArithmeticWire< T >::GetBitLength ( ) const
inlinefinalvirtual

◆ GetCircuitType()

template<typename T >
CircuitType encrypto::motion::proto::ConstantArithmeticWire< T >::GetCircuitType ( ) const
inlinefinalvirtual

◆ GetMutableValues()

template<typename T >
std::vector<T>& encrypto::motion::proto::ConstantArithmeticWire< T >::GetMutableValues ( )
inline

◆ GetProtocol()

template<typename T >
MpcProtocol encrypto::motion::proto::ConstantArithmeticWire< T >::GetProtocol ( ) const
inlinefinalvirtual

◆ GetValues()

template<typename T >
const std::vector<T>& encrypto::motion::proto::ConstantArithmeticWire< T >::GetValues ( ) const
inline

◆ IsConstant()

template<typename T >
bool encrypto::motion::proto::ConstantArithmeticWire< T >::IsConstant ( ) const
inlinefinalvirtualnoexcept

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