#include <iostream>
#include <stdio.h>
#include <sqlite/command.hpp>
#include <sqlite/result.hpp>
#include <string>
#include "lists/hardware.h"
#include "lists/cpu.h"
#include "include/setcpu.h"
#include "include/sethardware.h"
#include <sqlite3.h>

// Begin testing of SQLite3
int createDB();
int createTable();
static int createDB(const char* s);
static int createTable(const char* s);


int main() {

  const char* dbfile = "hardware.db";
  sqlite3* hardwareDB;

  createDB(dbfile);
  // createTable(dbfile);
 
  



  /* //Create the CPU classes from the cpulist file
  int counter= 0;
 auto cpus =  genCPUclasses();
  for (CPU& cpu: cpus) {
    // cpus[counter].HardwareSpecs["model"] = "value";
    std::cout << cpu.HardwareSpecs["model"] << " loaded at index: " << counter << std::endl;
    counter++;
  }
  */  
   //Testing the new dictionaries
  // cout << "Lets try the setCPU function!\n";
  // std::cout << "A7800x3d main clock speed is: " << A7800x3d->HardwareSpecs["mainclock"] << std::endl;
  // setHardwaremanufacturer(A7800x3d, "AMD");
  // setCPUcores(A7800x3d, "cores", 8);
  // setCPUthreads(A7800x3d, "threads", 16);
  // setCPUmainclock(A7800x3d, "mainclock", "4.8 Ghz");
  // setCPUboostclock(A7800x3d, "boostclock", "5.2 ghz");
  // cout << "\n\nA7800x3d new main/boost speed is: " << A7800x3d->HardwareSpecs["mainclock"] << "/" << A7800x3d->HardwareSpecs["boostclock"] << endl;
  // cout << "A7800x3d manufacturer is: " << A7800x3d->HardwareSpecs["manufacturer"] << "\n\n\n";


  system("sleep 1s");
  return 0;
}
