Каково ваше намерение в написании строк, таких как:
template Signal<float>;
Вы пытаетесь сделать явную реализацию шаблона? Если это так, предполагая, что Signal является шаблоном класса, вам нужно изменить его на:
// Instantiate Signal with type float
template class Signal<float>;
Если вы пытаетесь сделать что-то еще, пожалуйста, задайте вопрос.