// %flair:license{ // This file is part of the Flair framework distributed under the // CECILL-C License, Version 1.0. // %flair:license} // created: 2013/04/08 // filename: DataPlot2D.cpp // // author: Guillaume Sanahuja // Copyright Heudiasyc UMR UTC/CNRS 7253 // // version: $Id: $ // // purpose: Class displaying a 2D plot on the ground station // // /*********************************************************************/ #include "DataPlot2D.h" #include "LayoutPosition.h" #include "IODataElement.h" #include using std::string; namespace flair { namespace gui { DataPlot2D::DataPlot2D(const LayoutPosition* position,string name,string x_name,float xmin,float xmax,string y_name,float ymin,float ymax):DataPlot(position,name,"DataPlot2D") { SetVolatileXmlProp("xmin",xmin); SetVolatileXmlProp("xmax",xmax); SetVolatileXmlProp("ymin",ymin); SetVolatileXmlProp("ymax",ymax); SetVolatileXmlProp("x_name",x_name); SetVolatileXmlProp("y_name",y_name); SendXml(); } DataPlot2D::~DataPlot2D() {} void DataPlot2D::AddCurve(const core::IODataElement* x_element,const core::IODataElement* y_element,Color_t color,string curve_name) { uint8_t r,g,b; RGBFromColor(color,r,g,b); AddCurve(x_element,y_element,r,g,b,curve_name); } void DataPlot2D::AddCurve(const core::IODataElement* x_element,const core::IODataElement* y_element,uint8_t r,uint8_t g,uint8_t b,string curve_name) { if(typeid(x_element->GetDataType())!=typeid(y_element->GetDataType())) { Err("x_element type is different from y_element type (%i-%i)\n",x_element->GetDataType().GetDescription().c_str(),y_element->GetDataType().GetDescription().c_str()); //gerer erreur return; } if(curve_name!="") { SetVolatileXmlProp("curve",curve_name); } else { SetVolatileXmlProp("curve",x_element->Parent()->ObjectName() + "\\" +x_element->ObjectName()+ "\\" +y_element->ObjectName()); } SetVolatileXmlProp("type",x_element->GetDataType().GetDescription()); SetVolatileXmlProp("r",r); SetVolatileXmlProp("g",g); SetVolatileXmlProp("b",b); SendXml(); //save data information AddDataToSend(x_element); AddDataToSend(y_element); } } // end namespace gui } // end namespace flair