// file: $isip/class/asr/Machine/mach_01.cc
//

// isip include files
//
#include "Machine.h"
#include <Console.h>

// method: debug
//
// arguments:
//  const unichar* message: (input) information message
//
// return: a boolean value indicating status
//
// this method dumps the contents of an object to the console
//
boolean Machine::debug(const unichar* msg_a) const {
  
  // build a debug string
  //
  String value;
  String output;

  // output an information message
  //
  output.debugStr(name(), msg_a, L":");
  Console::put(output);
  Console::increaseIndention();

  // write the node name
  //
  node_name_d.debug(L"node_name_d");

  // write the architecture
  //
  architecture_d.debug(L"architecture_d");

  // write the number of processors
  //
  num_processors_d.debug(L"num_processors_d");

  // write the processor speed
  //
  speed_d.debug(L"speed_d");

  // write the main memory
  //
  main_memory_d.debug(L"main_memory_d");

  // write the swap memory
  //
  swap_memory_d.debug(L"swap_memory_d");
  
  // write the OS
  //
  os_d.debug(L"os_d");

  // write the OS version
  //
  os_version_d.debug(L"os_version_d");

  // decrease indention
  //
  Console::decreaseIndention();
  
  // exit gracefully
  //
  return true;
}

