// file: $isip/class/sp/FtrBuffer/ftrb_01.cc
// version: $Id: ftrb_01.cc 6862 2001-04-30 15:03:44Z peng $
//

// isip include files
//
#include <Console.h>
#include "FtrBuffer.h"
 
// method: debug
//
// arguments:
//  const unichar* msg: (input) message to print
//
// return: a boolean value indicating status
//
boolean FtrBuffer::debug(const unichar* msg_a) const {

  // declare local variables
  //
  String output;
  String value;
  
  // output an information message
  //
  output.debugStr(name(), msg_a, L":");
  Console::put(output);
  Console::increaseIndention();

  // display the hash table
  //
  output.debugStr(name(), msg_a, L"hash_d");
  Console::put(output);
  Console::increaseIndention();  
  hash_d.debug(L"");
  Console::decreaseIndention();

  // display the length
  //
  output.debugStr(name(), msg_a, L"length_d");
  Console::put(output);
  Console::increaseIndention();  
  length_d.debug(L"");

  // display the frame indices
  //
  output.debugStr(name(), msg_a, L"frame_index_d");
  Console::put(output);
  Console::increaseIndention();  
  frame_index_d.debug(L"");
  Console::decreaseIndention();

  output.debugStr(name(), msg_a, L"last_index_d");
  Console::put(output);
  Console::increaseIndention();  
  last_index_d.debug(L"");
  Console::decreaseIndention();

  // display the number of samples in the last frame
  //
  output.debugStr(name(), msg_a, L"leftover_samps_d");
  Console::put(output);
  Console::increaseIndention();  
  leftover_samps_d.debug(L"");
  Console::decreaseIndention();

  // display debug_level
  //
  value.assign((long) debug_level_d);
  output.debugStr(name(), msg_a, L"debug_level_d", value);
  Console::put(output);

  // decrease indention
  //
  Console::decreaseIndention();

  // exit gracefully
  //
  return true;
}
