[go: up one dir, main page]

Menu

Commit [r412]  Maximize  Restore  History

Added a serialization wrapper template SerializableSigOpT<>. This, and its base class, provides a generic interface to the scheduler for distributed bridges so that it can serialize SigOps without knowing their explicit type. SerializableSigOpT<> and its base class (SerializableSigOpBaseT<>) uses a regular virtual base construct, with virtual methods, to handle the separation between scheduling a generic SigOp and its associated type-specific serialization/deserialization. This virtula base-class solution has been chosen after some major efforts trying to solve the same problem (generic base interface calling a type-specific serialization) using templates only. A template-based solution woul remove the need for virtual methods, vtables, etc. But, after several unseccfull attempts, virtual base class interface is chosen in the name of progress.

Also cleared up the class names a bit and separated the serialization-pieces from the ZMQ-pieces. The serialization stands on its own legs and can be used with distributed bridges using other com-libs than ZMQ.

lonfield 2023-10-29

1 2 > >> (Page 1 of 2)
changed /trunk/Debug/Src/subdir.mk
changed /trunk/Include/BridgeDeclarationT.h
changed /trunk/Include/BridgeT.h
added /trunk/Include/DeSerializationBuffer.h
changed /trunk/Include/LockableOperationT.h
changed /trunk/Include/OperationT.h
added /trunk/Include/PayLoadSerDesT.h
added /trunk/Include/SerializableSigOpT.h
added /trunk/Include/SerializationBuffer.h
added /trunk/Include/SigOpInstantiatorT.h
added /trunk/Include/SigOpSerDes.h
added /trunk/Include/SigOpSerDesTypes.h
added /trunk/Include/SigOpSerDesWrapperT.h
changed /trunk/Include/SigOpT.h
changed /trunk/Include/SigOpTypeIdT.h
changed /trunk/Include/SignalT.h
removed /trunk/Include/ZmqDeSerializationBuffer.h
removed /trunk/Include/ZmqPayLoadSerDesT.h
changed /trunk/Include/ZmqProviderT.h
changed /trunk/Include/ZmqReqSchedulingTaskT.h
changed /trunk/Include/ZmqRequirerT.h
removed /trunk/Include/ZmqSerializationBuffer.h
removed /trunk/Include/ZmqSigOpInstantiatorT.h
removed /trunk/Include/ZmqSigOpSerDes.h
removed /trunk/Include/ZmqSigOpSerDesTypes.h
1 2 > >> (Page 1 of 2)