BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
ModelView::Data1DPlotController::Data1DPlotControllerImpl Struct Reference

Public Member Functions

 Data1DPlotControllerImpl (QCPGraph *graph)
 
QCustomPlot * customPlot ()
 
void initGraphFromItem (Data1DItem *item)
 
void resetErrorBars ()
 
void resetGraph ()
 
void updateErrorBarsFromItem (Data1DItem *item)
 
void updateGraphPointsFromItem (Data1DItem *item)
 

Public Attributes

QCPErrorBars * m_errorBars {nullptr}
 
QCPGraph * m_graph {nullptr}
 

Detailed Description

Definition at line 33 of file data1dplotcontroller.cpp.

Constructor & Destructor Documentation

◆ Data1DPlotControllerImpl()

ModelView::Data1DPlotController::Data1DPlotControllerImpl::Data1DPlotControllerImpl ( QCPGraph *  graph)
inline

Definition at line 37 of file data1dplotcontroller.cpp.

37  : m_graph(graph)
38  {
39  if (!m_graph)
40  throw std::runtime_error("Uninitialised graph in Data1DPlotController");
41  }

References ModelView::Data1DPlotController::Data1DPlotControllerImpl::m_graph.

Member Function Documentation

◆ customPlot()

◆ initGraphFromItem()

void ModelView::Data1DPlotController::Data1DPlotControllerImpl::initGraphFromItem ( Data1DItem item)
inline

Definition at line 43 of file data1dplotcontroller.cpp.

44  {
45  assert(item);
48  }

References ModelView::ItemListenerBase::item(), ModelView::Data1DPlotController::Data1DPlotControllerImpl::updateErrorBarsFromItem(), and ModelView::Data1DPlotController::Data1DPlotControllerImpl::updateGraphPointsFromItem().

Here is the call graph for this function:

◆ resetErrorBars()

void ModelView::Data1DPlotController::Data1DPlotControllerImpl::resetErrorBars ( )
inline

◆ resetGraph()

void ModelView::Data1DPlotController::Data1DPlotControllerImpl::resetGraph ( )
inline

Definition at line 72 of file data1dplotcontroller.cpp.

73  {
74  m_graph->setData(QVector<double>{}, QVector<double>{});
75  customPlot()->replot();
76  }

References ModelView::Data1DPlotController::Data1DPlotControllerImpl::customPlot(), and ModelView::Data1DPlotController::Data1DPlotControllerImpl::m_graph.

Here is the call graph for this function:

◆ updateErrorBarsFromItem()

void ModelView::Data1DPlotController::Data1DPlotControllerImpl::updateErrorBarsFromItem ( Data1DItem item)
inline

Definition at line 57 of file data1dplotcontroller.cpp.

58  {
59  auto errors = item->binErrors();
60  if (errors.empty()) {
62  return;
63  }
64 
65  if (!m_errorBars)
66  m_errorBars = new QCPErrorBars(customPlot()->xAxis, customPlot()->yAxis);
67 
68  m_errorBars->setData(fromStdVector<double>(errors));
69  m_errorBars->setDataPlottable(m_graph);
70  }
std::vector< double > binErrors() const
Returns value errors stored in bins.
Definition: data1ditem.cpp:93

References ModelView::Data1DPlotController::Data1DPlotControllerImpl::customPlot(), ModelView::ItemListenerBase::item(), ModelView::Data1DPlotController::Data1DPlotControllerImpl::m_errorBars, ModelView::Data1DPlotController::Data1DPlotControllerImpl::m_graph, and ModelView::Data1DPlotController::Data1DPlotControllerImpl::resetErrorBars().

Referenced by ModelView::Data1DPlotController::Data1DPlotControllerImpl::initGraphFromItem().

Here is the call graph for this function:

◆ updateGraphPointsFromItem()

void ModelView::Data1DPlotController::Data1DPlotControllerImpl::updateGraphPointsFromItem ( Data1DItem item)
inline

Definition at line 50 of file data1dplotcontroller.cpp.

51  {
52  m_graph->setData(fromStdVector<double>(item->binCenters()),
53  fromStdVector<double>(item->binValues()));
54  customPlot()->replot();
55  }
std::vector< double > binValues() const
Returns values stored in bins.
Definition: data1ditem.cpp:76
std::vector< double > binCenters() const
Sets axis. Bin content will be set to zero.
Definition: data1ditem.cpp:57

References ModelView::Data1DPlotController::Data1DPlotControllerImpl::customPlot(), ModelView::ItemListenerBase::item(), and ModelView::Data1DPlotController::Data1DPlotControllerImpl::m_graph.

Referenced by ModelView::Data1DPlotController::Data1DPlotControllerImpl::initGraphFromItem().

Here is the call graph for this function:

Member Data Documentation

◆ m_errorBars

QCPErrorBars* ModelView::Data1DPlotController::Data1DPlotControllerImpl::m_errorBars {nullptr}

◆ m_graph


The documentation for this struct was generated from the following file: