// file: tr_wrd_debug_0.cc
//

// isip include files
//
#include "train_word.h"
#include "train_word_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 Train_Word::debug_cc(FILE *fp_a, char_1* message_a) {
  
  // dump the contents of the class to the file
  //
  fprintf(fp_a, "%s::%s index_d = %ld\n", TRAIN_WRD_CLASS_NAME, message_a, index_d);
  fprintf(fp_a, "%s::%s name_d = %s\n", TRAIN_WRD_CLASS_NAME, message_a, name_d);
  fprintf(fp_a, "%s::%s num_prons_d = %ld\n", TRAIN_WRD_CLASS_NAME, message_a,
	  num_prons_d);

  // output the pronunciation
  //
  fprintf(fp_a, "%s::%s phone_list_d = %p\n", TRAIN_WRD_CLASS_NAME, message_a,
	  phone_list_d);
  fprintf(fp_a, "%s::%s num_phones_d = %p\n", TRAIN_WRD_CLASS_NAME, message_a,
	  num_phones_d);
  for (int_4 i = 0; i < num_prons_d; i++) {
    for (int_4 j = 0; j < num_phones_d[i]; j++) {
      fprintf(fp_a, "%s::%s phone_list_d[%ld][%ld] = %ld\n", TRAIN_WRD_CLASS_NAME,
	      message_a, i, j, phone_list_d[i][j]);
    }
  }

  // output the status flag
  //
  fprintf(fp_a, "%s::%s active_d = %c\n", TRAIN_WRD_CLASS_NAME, message_a,
	  active_d);
  
  // exit gracefully
  //
  return ISIP_TRUE;
}
