// file: inst_debug_0.cc
//

// isip include files
//
#include "instance.h"
#include "instance_constants.h"

// method: debug_cc
//
// arguments:
//  FILE* fp: (input) a open file pointer
//  char_1* message: (input) a message to be displayed
//
// return: a logical_1 flag indicating success
//
logical_1 Instance::debug_cc(FILE *fp_a, char_1* message_a) {
  
  // dump the contents of the class to the file
  //
  fprintf(fp_a, "%s::%s lex_node_d = %p\n", INSTANCE_CLASS_NAME,
	  message_a, lex_node_d);
  fprintf(fp_a, "%s::%s phone_index_d = %ld\n", INSTANCE_CLASS_NAME,
	  message_a, phone_index_d);

  // token lists
  //
  fprintf(fp_a, "%s::%s token_list_d = %p\n", INSTANCE_CLASS_NAME,
	  message_a, token_list_d);
  if (token_list_d != (Link_list*)NULL) {
    token_list_d->debug_cc(fp_a, message_a);
  }  
  
  // score data
  //
  fprintf(fp_a, "%s::%s max_score_d = %.4f\n", INSTANCE_CLASS_NAME,
	  message_a, max_score_d);

  fprintf(fp_a, "%s::%s lm_score_d = %.4f\n", INSTANCE_CLASS_NAME,
	  message_a, lm_score_d);

  // frame data
  //
  fprintf(fp_a, "%s::%s frame_d = %ld\n", INSTANCE_CLASS_NAME,
	  message_a, frame_d);

  // exit gracefully
  //
  return ISIP_TRUE;
}
