/*
 * $Id$
 *
 * [ Description ]
 * 
 */

#include "Behavioural/Generic/RegisterFile_Multi_Banked/RegisterFile_Multi_Banked_Glue/include/Parameters.h"

namespace morpheo {
namespace behavioural {
namespace generic {
namespace registerfile_multi_banked {
namespace registerfile_multi_banked_glue {

  Parameters::Parameters (uint32_t nb_port_read ,
			  uint32_t nb_port_write,
			  uint32_t size_address ,
			  uint32_t size_word    ,
			  uint32_t nb_bank      ):
    _nb_port_read          (nb_port_read         ),
    _nb_port_write         (nb_port_write        ),
    _size_address          (size_address         ),
    _size_word             (size_word            ),
    _nb_bank               (nb_bank              ),
    _nb_port_read_by_bank  (nb_port_read /nb_bank),
    _nb_port_write_by_bank (nb_port_write/nb_bank)
  {
    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters","Begin");
    test();
    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters","End");
  };
  
  Parameters::Parameters (Parameters & param):
   _nb_port_read          (param._nb_port_read ),
   _nb_port_write         (param._nb_port_write),
   _size_address          (param._size_address ),
   _size_word             (param._size_word    ),
   _nb_bank               (param._nb_bank      ),
   _nb_port_read_by_bank  (param._nb_port_read ),
   _nb_port_write_by_bank (param._nb_port_write)
   {
    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters","Begin");
    test();
    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"Parameters","End");
  };

  Parameters::~Parameters () 
  {
    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"~Parameters","Begin");
    log_printf(FUNC,RegisterFile_Multi_Banked_Glue,"~Parameters","End");
  };

}; // end namespace registerfile_multi_banked_glue
}; // end namespace registerfile_multi_banked
}; // end namespace generic
}; // end namespace behavioural
}; // end namespace morpheo              
