+template<typename T>
+struct fnc_sample;
+
+struct signal_data {
+ signal_data(const shared_ptr<SignalBase> _sb) :
+ sb(_sb), sample_num(numeric_limits<uint64_t>::max()), sample_value(0), ref(nullptr)
+ {}
+
+ const shared_ptr<SignalBase> sb;
+ uint64_t sample_num;
+ double sample_value;
+ double* ref;
+};
+