public MultiQuorumGateEvaluation(Party me, ComputationGate evalGate, IDictionary <Gate, Quorum> gateQuorumMapping, Circuit circuit, IGateEvaluationProtocolFactory <T> protocolFactory, IDictionary <InputGateAddress, T> circuitInputs, BigInteger prime, ulong protocolId) : base(me, GetParticipatingQuorumList(evalGate, gateQuorumMapping, circuit), protocolId) { EvalGate = evalGate; GateQuorumMapping = gateQuorumMapping; Circuit = circuit; Prime = prime; EvalQuorum = gateQuorumMapping[EvalGate]; CircuitInputs = circuitInputs; ProtocolFactory = protocolFactory; Result = new Dictionary <OutputGateAddress, T>(); }
public SecureMultiQuorumCircuitEvaluation(Party me, Quorum myQuorum, Quorum[] quorums, ulong protocolId, Circuit circuit, IDictionary <InputGateAddress, T> circuitInputs, IGateEvaluationProtocolFactory <T> protocolFactory, IDictionary <Gate, Quorum> gateQuorumMapping, BigInteger prime) : base(me, quorums, protocolId) { // assign gates to quorums GateList = circuit.TopologicalOrder; GateQuorumMapping = gateQuorumMapping; Circuit = circuit; CircuitInputs = circuitInputs; Prime = prime; Result = new Dictionary <OutputGateAddress, T>(); MyQuorum = myQuorum; ProtocolFactory = protocolFactory; }