Esempio n. 1
0
 protected internal override LogicalNetworkGene CreateGene(EntityDataUnit unit)
 {
     Contract.Requires(unit != null);
     Contract.Requires(unit.EntityData != null);
     Contract.Ensures(Contract.Result<LogicalNetworkGene>() != null);
     return null;
 }
Esempio n. 2
0
 protected internal override LogicalNetworkGene CreateGene(EntityDataUnit unit)
 {
     var reg = GetRegistry(unit);
     int index = GetIndex(reg);
     var operation = GetValue<LogicalOperation>(reg, "Operation");
     return new LogicGateGene(index, operation);
 }
 protected internal override LogicalNetworkGene CreateGene(EntityDataUnit unit)
 {
     var reg = GetRegistry(unit);
     int index = GetIndex(reg);
     bool isUpper = GetValue<bool>(reg, "IsUpper");
     return new LogicalConnectionGene(index, isUpper);
 }
Esempio n. 4
0
        internal LogicalNetworkGene CreateGene(EntityDataUnit unit)
        {
            Contract.Requires(unit != null);

            switch (unit.OptUnitID)
            {
                case NullID:
                    return null;
                case ConnectionID:
                    return connOptUnit.CreateGene(unit);
                case GateID:
                    return gateOptUnit.CreateGene(unit);
                default:
                    throw new InvalidOperationException("Unknown OptUnit ID '" + unit.OptUnitID + "'.");
            }
        }
Esempio n. 5
0
 protected internal abstract LogicalNetworkGene CreateGene(EntityDataUnit unit);