Open fughilli opened 2 years ago
conversion declaration, opaque data storage, and a minimal graph model are implemented (the graph model only supports linear graphs, which is not very useful at the moment).
I think a nice short-term goal to be able to start playing with the features consists of:
opendrop::Graph
with appropriate edge storage/aliasing)An initial model is now implemented and merged. There is a lot of cruft left over that should be cleaned up:
The OpaqueTuple abstraction should not own memory. It should be just a mechanism for converting from a set of pointers to data to a tuple of typed references and back. The outputs of all nodes in the graph will have memory owned by the graph itself; the nodes will only own memory used to track their internal state. The input to the whole graph is provided by reference at the time of Graph::Evaluate(), and thus does not need to be owned by the graph.
Types should be default-constructible--it was a complete headache trying to work around how to be able to construct memory for a Type without statically knowing its C++ class type. All memory for a graph will be default-constructed and then initialized appropriately on first mutation.
The implementation should be revised to achieve this simpler model.
Ideas:
kModel
,kRender
, orkRaster