コード例 #1
0
ファイル: Chip.cs プロジェクト: nt314p/Logic-Gate-Sim
        public static bool IsPrimative(string name, out PrimativeChipType primativeChipType)
        {
            if (primativeChipDict.TryGetValue(name, out PrimativeChipType type))
            {
                primativeChipType = type;
                return(true);
            }

            primativeChipType = PrimativeChipType.None;
            return(false);
        }
コード例 #2
0
        private static int PrimativeChipPinCount(PrimativeChipType chipType)
        {
            switch (chipType)
            {
            case PrimativeChipType.Not:
                return(2);

            case PrimativeChipType.And:
            case PrimativeChipType.Or:
            case PrimativeChipType.Xor:
                return(3);
            }
            return(-1);
        }
コード例 #3
0
 public PrimativeChip(PrimativeChipType primativeChipType)
     : base(primativeChipType.ToString(), PrimativeChipPinCount(primativeChipType))
 {
     this.primativeChipType = primativeChipType;
 }