Stefan Eilemann wrote:
Me too. I've tweaked and implemented your idea for Monitor - can you
test it and tell me if it works?
I'll then apply it to the other classes.
Almost:
There is still an EQ_PT_EXPORT missing on _construct() (line 150), which is called by the inlined Ctors.
And on line 157/158, operator <<: First, the EQ_PT_EXPORT needs to go after the template< typename T >, like this:
template< typename T >
EQ_PT_EXPORT std::ostream& operator << ( std::ostream& os, const Monitor<T>& monitor );
Then Equalizer compiles again, but I still get unresolved externals about the <<, which is expected because it's not explicitly instantiated. But adding
template std::ostream& operator << < uint32_t > ( std::ostream& os, const Monitor< uint32_t >& monitor );
template std::ostream& operator << < bool > ( std::ostream& os, const Monitor< bool >& monitor );
to monitor.cpp doesn't seem to change anything. Am I still missing something here..?
Thanks,
Marc