/*
 *  Copyright 2011 OpenSourceStewardshipFoundation.org
 *  Licensed under BSD
 *
 * author seanhalle@yahoo.com
 */
 
#include <malloc.h>
#include <stdlib.h>

#include "SimParams.h"
#include "HWSim__PingPong__HWDef/HWSim__PingPong__HWDef.h"
#include "../C_Libraries/ParamHelper/Param.h"


char __ProgrammName[] = "HWSim Hello World";
char __DataSet[255];
char __Scheduler[1];

/*
 *
 * 
 */

int main( int argc, char **argv )
 { ParamBag      *simParams;
   HWSimNetlist  *netlist;
   HWSimResults  *simResults;

   printf( "param file name: %s\n", argv[1] );
   printf("Paraver trace file %s\n", argv[2]);

#ifdef FAKE
	simParams= NULL;
#else
   simParams = makeParamBag();
   readParamFileIntoBag( argv[1], simParams );
#endif
   
   netlist = createPingPongNetlist();
#ifdef FAKE
   simResults= create_simulation_results__fake(simParams,netlist);
#else
   simResults = 
    HWSim__run_simulation( simParams, netlist );
#endif

      //HWSim 
   //HWSim__generate_paraver_output(argv[2], simResults, netlist); //Stefan: my version
	HWSim__generate_paraver_output(simResults);
   //HWSim__generate_vcd_output( simResults );
   
   exit(0); //cleans up
 }

