public DirectedGraphNode Add <AddressT, DataT>(MemoryRam <AddressT, DataT> ram) where AddressT : BusData, new() where DataT : BusData, new() { if (!Visit(ram)) { return(FindNode(ram)); } DirectedGraphNode node = AddNode <MemoryRam <AddressT, DataT> >(ram.Name); SetNodeMap(ram, node); if (!DisplayComponents) { node = null; } LinkContains(node, Add(ram.Address, ram.Name)); LinkContains(node, Add(ram.Data, ram.Name)); LinkContains(node, Add(ram.ChipEnable, ram.Name)); LinkContains(node, Add(ram.OutputEnable, ram.Name)); LinkContains(node, Add(ram.WriteEnable, ram.Name)); return(node); }
public static MemoryRam <BusData16, BusData8> NewRam(byte[] buffer) { var mem = new MemoryRam <BusData16, BusData8>(); if (buffer != null) { mem.Write(buffer); } return(mem); }
public static MemoryRam <BusData16, BusData8> NewRam(byte[] buffer) { var mem = new MemoryRam <BusData16, BusData8>(); if (buffer != null) { var writer = new MemoryWriter <BusData16, BusData8>(mem); writer.CopyFrom(CreateBinaryReader(buffer)); } return(mem); }
public void UsePC() { IRam ram = new MemoryRam(); //contructor Computer computer = new Computer(ram); //property computer.Disk = new HardDrive(); //Parameter computer.Turn_On(new MotherBoard()); }
private static PCTower ConfigurePCTower(ComponentFactory componentFactory, ProductFactory productFactory) { string answer; PCTower pcTower; Console.WriteLine("Insert CPU frequency in GHz\n"); answer = Console.ReadLine(); CPU cpu = componentFactory.CreateComponent("CPU") as CPU; if (!cpu.SetValue(answer)) { WrongInput(); return(productFactory.CreateProduct("PCTower") as PCTower); } Console.WriteLine("Insert size of Memory Ram in GB\n"); answer = Console.ReadLine(); MemoryRam memoryRam = componentFactory.CreateComponent("MemoryRam") as MemoryRam; if (!memoryRam.SetValue(answer)) { WrongInput(); return(productFactory.CreateProduct("PCTower") as PCTower); } pcTower = productFactory.CreateProduct("PCTower") as PCTower; if (!pcTower.SetMemoryRam(memoryRam)) { //handle exception demek WrongInput(); return(productFactory.CreateProduct("PCTower") as PCTower); } if (!pcTower.SetCPU(cpu)) { //handle exception WrongInput(); return(productFactory.CreateProduct("PCTower") as PCTower); } return(pcTower); }
internal bool SetMemoryRam(MemoryRam memoryRam) { MemoryRam = memoryRam; return(true); }
public PCTower(CPU cpu, MemoryRam memoryRam) { CPU = cpu; MemoryRam = MemoryRam; }