diff --git a/Cicm.Database/Operations/Processor.cs b/Cicm.Database/Operations/Processor.cs index f3858c3c..1c160d00 100644 --- a/Cicm.Database/Operations/Processor.cs +++ b/Cicm.Database/Operations/Processor.cs @@ -390,7 +390,7 @@ namespace Cicm.Database Process = dataRow["process"] == DBNull.Value ? null : (string)dataRow["process"], ProcessNm = dataRow["process_nm"] == DBNull.Value ? 0 : (float)dataRow["process_nm"], DieSize = dataRow["die_size"] == DBNull.Value ? 0 : (float)dataRow["die_size"], - Transistors = dataRow["transistors"] == DBNull.Value ? 0 : (ulong)dataRow["transistors"], + Transistors = dataRow["transistors"] == DBNull.Value ? 0 : (long)dataRow["transistors"], AddressBus = dataRow["addr_bus"] == DBNull.Value ? 0 : (int)dataRow["addr_bus"], DataBus = dataRow["data_bus"] == DBNull.Value ? 0 : (int)dataRow["data_bus"], Simd = dataRow["SIMD_registers"] == DBNull.Value ? 0 : (int)dataRow["SIMD_registers"], diff --git a/Cicm.Database/Schemas/Processor.cs b/Cicm.Database/Schemas/Processor.cs index dfbe8ce0..4dc66987 100644 --- a/Cicm.Database/Schemas/Processor.cs +++ b/Cicm.Database/Schemas/Processor.cs @@ -91,6 +91,6 @@ namespace Cicm.Database.Schemas /// How many simultaneos threads can run on each processor core public int ThreadsPerCore; /// How many transistors in package - public ulong Transistors; + public long Transistors; } } \ No newline at end of file diff --git a/cicm_web/Models/Processor.cs b/cicm_web/Models/Processor.cs index ad64dc88..37cdbe18 100644 --- a/cicm_web/Models/Processor.cs +++ b/cicm_web/Models/Processor.cs @@ -28,19 +28,77 @@ // Copyright © 2003-2018 Natalia Portillo *******************************************************************************/ +using System; using System.Collections.Generic; +using Cicm.Database.Schemas; namespace cicm_web.Models { public class Processor { - public int Id; - public string Name; + public int AddressBus; + public Company Company; + public int Cores; + public int DataBus; + public float DieSize; + public int Fpr; + public int FprSize; + public int Gpr; + public int GprSize; + public int Id; + public InstructionSet InstructionSet; + public InstructionSetExtension[] InstructionSetExtensions; + public DateTime Introduced; + public float L1Data; + public float L1Instruction; + public float L2; + public float L3; + public string ModelCode; + public string Name; + public string Package; + public string Process; + public float ProcessNm; + public int Simd; + public int SimdSize; + public double Speed; + public int ThreadsPerCore; + public long Transistors; public static Processor GetItem(int id) { Cicm.Database.Schemas.Processor dbItem = Program.Database?.Operations.GetProcessor(id); - return dbItem == null ? null : new Processor {Name = dbItem.Name, Id = dbItem.Id}; + return dbItem == null + ? null + : new Processor + { + AddressBus = dbItem.AddressBus, + Name = dbItem.Name, + Company = Company.GetItem(dbItem.Company.Id), + Cores = dbItem.Cores, + DataBus = dbItem.DataBus, + DieSize = dbItem.DieSize, + Fpr = dbItem.Fpr, + FprSize = dbItem.FprSize, + Gpr = dbItem.Gpr, + GprSize = dbItem.GprSize, + InstructionSet = dbItem.InstructionSet, + InstructionSetExtensions = dbItem.InstructionSetExtensions, + Introduced = dbItem.Introduced, + L1Data = dbItem.L1Data, + L1Instruction = dbItem.L1Instruction, + L2 = dbItem.L2, + L3 = dbItem.L3, + ModelCode = dbItem.ModelCode, + Package = dbItem.Package, + Process = dbItem.Process, + ProcessNm = dbItem.ProcessNm, + Simd = dbItem.Simd, + SimdSize = dbItem.SimdSize, + Speed = dbItem.Speed, + ThreadsPerCore = dbItem.ThreadsPerCore, + Transistors = dbItem.Transistors, + Id = dbItem.Id + }; } public static Processor[] GetAllItems() @@ -52,7 +110,36 @@ namespace cicm_web.Models List items = new List(); foreach(Cicm.Database.Schemas.Processor dbItem in dbItems) - items.Add(new Processor {Id = dbItem.Id, Name = dbItem.Name}); + items.Add(new Processor + { + AddressBus = dbItem.AddressBus, + Name = dbItem.Name, + Company = Company.GetItem(dbItem.Company.Id), + Cores = dbItem.Cores, + DataBus = dbItem.DataBus, + DieSize = dbItem.DieSize, + Fpr = dbItem.Fpr, + FprSize = dbItem.FprSize, + Gpr = dbItem.Gpr, + GprSize = dbItem.GprSize, + InstructionSet = dbItem.InstructionSet, + InstructionSetExtensions = dbItem.InstructionSetExtensions, + Introduced = dbItem.Introduced, + L1Data = dbItem.L1Data, + L1Instruction = dbItem.L1Instruction, + L2 = dbItem.L2, + L3 = dbItem.L3, + ModelCode = dbItem.ModelCode, + Package = dbItem.Package, + Process = dbItem.Process, + ProcessNm = dbItem.ProcessNm, + Simd = dbItem.Simd, + SimdSize = dbItem.SimdSize, + Speed = dbItem.Speed, + ThreadsPerCore = dbItem.ThreadsPerCore, + Transistors = dbItem.Transistors, + Id = dbItem.Id + }); return items.ToArray(); }