libmeasurement (for graybox-style fuzzing)
Change-Id: Id5dc59426d2edb8bb5be3319f7e9d5124dc7952f
diff --git a/sysfuzzer/vtscompiler/code_gen/CodeGenBase.cpp b/sysfuzzer/vtscompiler/code_gen/CodeGenBase.cpp
index 05c5462..285b141 100644
--- a/sysfuzzer/vtscompiler/code_gen/CodeGenBase.cpp
+++ b/sysfuzzer/vtscompiler/code_gen/CodeGenBase.cpp
@@ -46,6 +46,7 @@
cpp_ss << "#include <iostream>" << endl;
cpp_ss << "#include \"vts_datatype.h\"" << endl;
+ cpp_ss << "#include \"vts_measurement.h\"" << endl;
for (auto const& header : message.header()) {
cpp_ss << "#include " << header << endl;
}
@@ -140,5 +141,17 @@
ss << "} // namespace android" << endl;
}
+
+void CodeGenBase::GenerateCodeToStartMeasurement(std::stringstream& ss) {
+ ss << "VtsMeasurement vts_measurement;" << endl;
+ ss << "vts_measurement.Start();" << endl;
+}
+
+
+void CodeGenBase::GenerateCodeToStopMeasurement(std::stringstream& ss) {
+ ss << "vector<float>* measured = vts_measurement.Stop();" << endl;
+ ss << "cout << \"time \" << (*measured)[0] << endl;" << endl;
+}
+
} // namespace vts
} // namespace android