Hi,
you could overwrite NodeData::CopyTo
(and ::Read
and ::Write
). In CopyTo
you would have to serialize your BaseLink
information, bei either serializing the linked nodes directly or by serializing some kind of custom context. The unpacking would technically happen in NodeData::Read
but due to the special scenario, you will probably have to delay your unpacking to a later point, when you are sure that the updating of the new scene graph has finalized.
But apart from these hoops to jump through, you would have to make sure to correctly handle cyclic structures, partial copies and chain reactions of your copy logic (do I really want to allow a thousand object longMySpecialTag
copy logic chain reaction to unravel, because the user copied one tag?). Because of these problems plus the fact that deviating from the default behavior might confuse the user, I would contemplate if this is really what you want.
Cheers,
zipit