// file: tr_st_size_0.cc
//

// isip include files
//
#include "train_state.h"
#include "train_state_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_State::size_cc() {

  // set the size variable
  //
  int_4 size = 0;
  
  // add the size of each constituent data
  //
  size += sizeof(int_4);                         // num_mixtures_d
  size += num_mixtures_d * sizeof(float_4);      // weights_d
  size += num_mixtures_d * sizeof(float_4);      // scale_d_d
  size += num_mixtures_d * num_features_d *
    sizeof(float_4);                             // mean_d
  size += num_mixtures_d * num_features_d *
    sizeof(float_4);                             // covar_d
  size += sizeof(int_4);                         // frame_d
  size += sizeof(float_8);                       // score_d
  size += sizeof(int_4);                         // state_index_d

  // exit gracefully
  //
  return size;
}



