Skip to content
Christian Strobel edited this page Sep 14, 2016 · 5 revisions

FILES

HEADER

/usr/include/OgreControllerBackend.h

/usr/include/Gnss.h

/usr/include/ExternalTrackingIfc.h

LIBS

/usr/lib/libOgreControllerBackend.a

/usr/lib/libmeschach.a

/usr/lib/static/libfhgpcie.a

Example

Makefile

all:
   gcc main.cpp -o my_app -g -lOgreControllerBackend -lstdc++ -lpthread -lfhgpcie -lmeschach -ljsoncpp -lrt -lm

main.cpp

#include "OgreControllerBackend.h"
#include "ExternalTrackingIfc.h"

class MyTracking : public ExternalTrackingIfc {
   void newCorrelation(const correlation_values_t &corrVals, control_values_t *ctlVals) {
       // TODO Return control values
   }   

   void initializeTrk(const tracking_init_t &trkInit) {
       // Do something with the data
   }   

   void newSatelliteInfo(const satellite_info_t &satRcvRel) {
       // Do something with the data
   }   

   void newEphemerisData(const ephemeris_data_t & ephmData) {
       // Do something with the data
   }   
};

int main() {
   OgreControllerBackend ctl;
   MyTracking trk;
   // If you register an external tracking it is important to implement the
   // method newCorrelation and send back control values. Otherwise the
   // tracking of all satellites fails.
   ctl.registerExternalTrackingInterface(&trk);
   ctl.startAndRunReceiver();
   return 0;
}