#include "debayer_tb.h"
#include "debayer.h"
#include "wami_params.h"
#include "wami_utils.h"
#include "wami_debayer.h"
#include "mydata.h"
#include <ctime>
#include <ostream>
//call testbench
int sc_main(int, char **){
//read the input
fp = fopen(filename, "rb");
if (fp == NULL)
{
fprintf(stderr, "Error: Unable to open input file %s for reading.\n",
filename);
exit(EXIT_FAILURE);
}
//read each line of the file and get the first three lines
//ifstream?
//define parameters
sc_clock clk("clk", 10, SC_NS);
sc_signal<bool> rst("rst");
sc_signal<Input> input;
sc_signal<Output> output;
//link parameters to DUT
debayer dut("dut");
dut.clk(clk);
dut.rst(rst);
dut.input(input);
dut.output(output);
//link parameters to test bench
debayer_tb tb("tb");
tb.clk(clk);
tb.rst(rst);
tb.input(input);
tb.output(output);
//reset
rst.write(false);
sc_start(11, SC_NS);
rst.write(true);
//need to tell it how long to run simulation?
sc_stop();
return();
}
CiNpbmNsdWRlICJkZWJheWVyX3RiLmgiCiNpbmNsdWRlICJkZWJheWVyLmgiCiNpbmNsdWRlICJ3YW1pX3BhcmFtcy5oIgojaW5jbHVkZSAid2FtaV91dGlscy5oIgojaW5jbHVkZSAid2FtaV9kZWJheWVyLmgiCiNpbmNsdWRlICJteWRhdGEuaCIKI2luY2x1ZGUgPGN0aW1lPgojaW5jbHVkZSA8b3N0cmVhbT4KCi8vY2FsbCB0ZXN0YmVuY2gKaW50IHNjX21haW4oaW50LCBjaGFyICoqKXsKCiAgICAgICAgLy9yZWFkIHRoZSBpbnB1dCAgICAgICAgCiAgICAgICAgZnAgPSBmb3BlbihmaWxlbmFtZSwgInJiIik7CiAgICAgICAgaWYgKGZwID09IE5VTEwpCiAgICAgICAgewogICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJFcnJvcjogVW5hYmxlIHRvIG9wZW4gaW5wdXQgZmlsZSAlcyBmb3IgcmVhZGluZy5cbiIsCiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lKTsKICAgICAgICAgICAgICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKICAgICAgICB9CgogICAgICAgIC8vcmVhZCBlYWNoIGxpbmUgb2YgdGhlIGZpbGUgYW5kIGdldCB0aGUgZmlyc3QgdGhyZWUgbGluZXMKICAgICAgICAvL2lmc3RyZWFtPwoKICAgICAgICAvL2RlZmluZSBwYXJhbWV0ZXJzCiAgICAgICAgc2NfY2xvY2sgY2xrKCJjbGsiLCAxMCwgU0NfTlMpOwogICAgICAgIHNjX3NpZ25hbDxib29sPiByc3QoInJzdCIpOwogICAgICAgIHNjX3NpZ25hbDxJbnB1dD4gaW5wdXQ7CiAgICAgICAgc2Nfc2lnbmFsPE91dHB1dD4gb3V0cHV0OwoKICAgICAgICAvL2xpbmsgcGFyYW1ldGVycyB0byBEVVQKICAgICAgICBkZWJheWVyIGR1dCgiZHV0Iik7CiAgICAgICAgZHV0LmNsayhjbGspOwogICAgICAgIGR1dC5yc3QocnN0KTsKICAgICAgICBkdXQuaW5wdXQoaW5wdXQpOwogICAgICAgIGR1dC5vdXRwdXQob3V0cHV0KTsKCiAgICAgICAgLy9saW5rIHBhcmFtZXRlcnMgdG8gdGVzdCBiZW5jaAogICAgICAgIGRlYmF5ZXJfdGIgdGIoInRiIik7CiAgICAgICAgdGIuY2xrKGNsayk7CiAgICAgICAgdGIucnN0KHJzdCk7CiAgICAgICAgdGIuaW5wdXQoaW5wdXQpOwogICAgICAgIHRiLm91dHB1dChvdXRwdXQpOwoKICAgICAgICAvL3Jlc2V0CiAgICAgICAgcnN0LndyaXRlKGZhbHNlKTsKICAgICAgICBzY19zdGFydCgxMSwgU0NfTlMpOwogICAgICAgIHJzdC53cml0ZSh0cnVlKTsKCiAgICAgICAgLy9uZWVkIHRvIHRlbGwgaXQgaG93IGxvbmcgdG8gcnVuIHNpbXVsYXRpb24/CgogICAgICAgIHNjX3N0b3AoKTsKICAgICAgICByZXR1cm4oKTsKCn0=