* from() converts a time _origin_b + b into an offset from _origin_b in units of A.
*/
template<typename A, typename B>
-class LIBEVORAL_API TimeConverter {
+class LIBEVORAL_TEMPLATE_API TimeConverter {
public:
TimeConverter () : _origin_b (0) {}
TimeConverter (B ob) : _origin_b (ob) {}
- virtual ~TimeConverter() {}
+ virtual ~TimeConverter();
/** Convert A time to B time (A to B) */
virtual B to(A a) const = 0;
B origin_b () const {
return _origin_b;
}
-
+
void set_origin_b (B o) {
_origin_b = o;
}
* going on.
*/
template<typename A, typename B>
-class LIBEVORAL_API IdentityConverter : public TimeConverter<A,B> {
+class LIBEVORAL_TEMPLATE_API IdentityConverter : public TimeConverter<A,B> {
public:
IdentityConverter() {}
- B to(A a) const { return static_cast<B>(a); }
- A from(B b) const { return static_cast<A>(b); }
+
+ B to(A a) const;
+ A from(B b) const;
};