We need to add support for binaries and/or other hierarchical orbital models.
At present simply adding a binary orbit position object to SIMTOI would be exceedingly difficult as we would need to associate one position object with multiple models (easy via. shared pointers) and determine their (x,y,z) location based upon the calling object (not easy). Instead, I propose we swap the role of models and positions such that positions now serve as a container object for one or more models. Doing this will require a substantial overhaul of SIMTOI including:
CModel
Remove Position Object
Insert datamember for (x,y,z) position
Add public function to set/get position.
Make CModel base class be full class (i.e. remove abstract class)
CPosition
Base class will need to contain a model list (perhaps of fixed size)
Add get/add/remove model functions.
CModelList
Convert to a simple container?
Create CPositionList?
We need a high-level container for interfacing from the CWorkerThread
We need to add support for binaries and/or other hierarchical orbital models.
At present simply adding a binary orbit position object to SIMTOI would be exceedingly difficult as we would need to associate one position object with multiple models (easy via. shared pointers) and determine their
(x,y,z)
location based upon the calling object (not easy). Instead, I propose we swap the role of models and positions such that positions now serve as a container object for one or more models. Doing this will require a substantial overhaul of SIMTOI including: