14#ifndef SIMICS_SYSTEMC_INSTRUMENTATION_TOOL_CONNECTION_INTERFACE_H
15#define SIMICS_SYSTEMC_INSTRUMENTATION_TOOL_CONNECTION_INTERFACE_H
17#include <simics/cc-api.h>
24namespace instrumentation {
31 virtual const std::vector<std::string> &
functions()
const = 0;
34 virtual ConfObjectRef
tool()
const = 0;
37 template<
class TInterface>
41 return dynamic_cast<TInterface *
>(
this);
43 simics::ConfObject *obj = simics::from_obj<simics::ConfObject>(
45 return dynamic_cast<TInterface *
>(obj);