On 09/01/2011 01:18 PM, David Robillard wrote:

The main issue you'll find with going the C++/RTTI route is that #2 no
longer is possible, since virtual objects are not POD, so you can't
safely write them through a ringbuffer (or copy them around manually in
general).
[snip]

Correct me if I'm wrong... but...

      class event_two_t : public event_t
      {
      public:
          int type() { return int(EVENT_TWO); }
          uint32_t size() { return sizeof(event_two); }

          /* event-specific stuff */
      };

The intention of the size() member function is to allow you to memcpy() the object without knowing its type. Is that not enough?

-gabriel
_______________________________________________
Linux-audio-dev mailing list
[email protected]
http://lists.linuxaudio.org/listinfo/linux-audio-dev

Reply via email to