// file: tr_st_size_0.cc
//

// isip include files
//
#include "train_word.h"
#include "train_word_constants.h"

// method: size_cc
//
// arguments: none
//
// return: an int_4 with number of bytes used by this object
//
// this method counts the size of the current object in bytes
//
int_4 Train_Word::size_cc() {

  // set the size variable
  //
  int_4 size = 0;
  
  // add the size of each constituent data
  //
  size += sizeof(int_4);                         // index_d
  size += (int_4)(strlen((char*)name_d) + 1);    // name_d
  size += sizeof(int_4);                         // num_prons_d
  size += num_prons_d * sizeof(int_4);           // num_phones_d
  for (int_4 i = 0; i < num_prons_d; i++) {
    size += num_phones_d[i] * sizeof(int_4);     // phone_list_d
  }
  size += sizeof(logical_1);                     // active_d
  
  // exit gracefully
  //
  return size;
}
