I have a vessel module (Ananke.dll) for the ZTC Ltd Ananke tether. I want to be able to control specific aspects of the tether when it does not have the focus, eg, from within the payload vessel that is rendezvousing (spelling?) with the tether. To this end I am developing a module AnankeControl.dll that will either take the form of an MFD or a custom dialog box.
In the Ananke VESSEL class I have some public member functions defined. From Ananke.h:
In AnankeControl.dll, I get the Ananke object handle and VESSEL handle but that does not give me access to the three functions listed above. Is there some way to do this? Export the class with DLLEXPORT? Will this cause conflicts with the Orbiter VESSEL/VESSEL2 classes, especially with regard to any overloaded callback functions I have? If so, can I just export those particular member functions?
I do have a backup plan. The code in the functions of interest can be duplicated in my AnankeControl module since it only relies on standard Orbiter API calls. The downside is that I expect this code to change as the project develops and I would rather not have to maintain the code in two separate places.
Thanks in advance.
In the Ananke VESSEL class I have some public member functions defined. From Ananke.h:
Code:
// Ananke.dll
...
class Ananke: public VESSEL2 {
public:
...
double GetPayloadVVAngle(); // Returns angle between an attached payload's velocity vector and the superstructure's velocity vector
bool HasPayload(); // Returns true if payload attached
bool ReleasePayload(); // Releases an attached payload. Returns true if successful
...
};
I do have a backup plan. The code in the functions of interest can be duplicated in my AnankeControl module since it only relies on standard Orbiter API calls. The downside is that I expect this code to change as the project develops and I would rather not have to maintain the code in two separate places.
Thanks in advance.
