Beispiel #1
0
        private CircuitElementDao mapElementToDao(ICircuitElementDto dto)
        {
            CircuitElementDao dao = null;

            if (dto.Type == "register")
            {
                dao = new RegisterDao()
                {
                    Qubits = ((IRegisterDto)dto).Qubits.Select(qubit => mapQubitToDao(qubit))
                };
            }
            else if (dto.Type == "gate")
            {
                dao = new GateDao()
                {
                    GateName = ((IGageDto)dto).GateName
                };
            }

            dao.Type        = dto.Type;
            dao.Id          = dto.Id;
            dao.InputCount  = dto.InputCount;
            dao.OutputCount = dto.OutputCount;

            return(dao);
        }
Beispiel #2
0
        private ICircuitElementDto mapElemToDto(CircuitElementDao dao)
        {
            ICircuitElementDto dto = null;

            if (dao.Type == "register")
            {
                dto = _producer.ProduceRegisterDto();
                ((IRegisterDto)dto).Qubits = ((RegisterDao)dao).Qubits.Select(dao => mapQubitToDto(dao));
            }
            else if (dao.Type == "gate")
            {
                dto = _producer.ProduceGateDto();
                ((IGageDto)dto).GateName = ((GateDao)dao).GateName;
            }

            dto.Type        = dao.Type;
            dto.Id          = dao.Id;
            dto.InputCount  = dao.InputCount;
            dto.OutputCount = dao.OutputCount;

            return(dto);
        }