29 const double default_min = 0.0;
30 const double default_max = 1.0;
43 auto basicAxis = addProperty<BasicAxisItem>(
P_XAXIS);
46 auto amplitudeAxis = addProperty<AmplitudeAxisItem>(
P_YAXIS);
145 throw GUIHelpers::Error(
"Error in DataItem1DView::resetToDefault: not implemented");
154 #if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)
155 auto centers = data->axis(0).binCenters();
156 auto values = data->getRawDataVector();
157 return {QVector<double>(centers.begin(), centers.end()),
158 QVector<double>(values.begin(), values.end())};
172 if (
item->modelType() ==
"JobItem") {
178 "Error in DataItem1DView::jobItem: passed item is not owned by any job item");
213 return item<BasicAxisItem>(
P_XAXIS);
218 return item<BasicAxisItem>(
P_XAXIS);
223 return item<AmplitudeAxisItem>(
P_YAXIS);
228 return item<AmplitudeAxisItem>(
P_YAXIS);
242 return QPair<double, double>(default_min, default_max);
244 double min(*std::min_element(data->
begin(), data->
end()));
245 double max(*std::max_element(data->
begin(), data->
end()));
248 min = std::numeric_limits<double>::epsilon() < min ? min : default_min;
250 max = max > min ? max : default_max;
252 return QPair<double, double>(min, max);
Defines various axis items.
Defines class ComboProperty.
Defines class Data1DViewItem.
Defines class DataProperties and its descendants.
Defines class DataPropertyContainer.
Defines namespace DataViewUtils.
Defines class GUIHelpers functions.
const QString y_axis_default_name
const QString x_axis_default_name
void setLogScale(bool value)
static const QString P_NBINS
static const QString P_TITLE
double upperBound() const
static const QString P_IS_VISIBLE
double lowerBound() const
void setLowerBound(double value)
void setUpperBound(double value)
void setTitle(const QString &title)
Custom property to define list of string values with multiple selections.
QVariant variant() const
Constructs variant enclosing given ComboProperty.
Holds data required for 1D DataItem representation.
JobItem * jobItem()
Returns either parenting JobItem or job item set with DataItem1DView::setJobItem.
void setLog(bool log_flag)
static const QString P_YAXIS
static const QString P_TITLE
const AmplitudeAxisItem * yAxisItem() const
int getNbins() const
Number of bins in data.
void setAxesRangeToData()
set zoom range of x,y axes to axes of input data
static const QString P_AXES_UNITS
DataPropertyContainer * propertyContainerItem()
void resetView()
Set axes viewport to original data.
double getLowerY() const
returns lower and upper zoom ranges of y-axis
const BasicAxisItem * xAxisItem() const
QString getYaxisTitle() const
void setUpperY(double value)
QString getXaxisTitle() const
double getLowerX() const
returns lower and upper zoom ranges of x-axis
QPair< QVector< double >, QVector< double > > graphData(Data1DProperties *property_item)
Returns point data for drawing.
void setLowerX(double value)
void setLowerY(double value)
static const QString P_XAXIS
void setUpperX(double value)
void setXaxisTitle(const QString &title)
QPair< double, double > dataRange(const OutputData< double > *data) const
Init ymin, ymax to match the intensity values range.
static const QString T_DATA_PROPERTIES
void setYaxisTitle(const QString &title)
void resetToDefault()
Returns data view to default state (no dimensional units, default axes' names)
void setOnPropertyChange(std::function< void(QString)> f, const void *caller=0)
iterator end()
Returns read/write iterator that points to the one past last element.
iterator begin()
Returns read/write iterator that points to the first element.
SessionItem * addProperty(const QString &name, const QVariant &variant)
Add new property item and register new tag.
bool registerTag(const QString &name, int min=0, int max=-1, QStringList modelTypes={})
Add new tag to this item with given name, min, max and types.
QVariant value() const
Get value.
void setVisible(bool enabled)
Flags accessors.
ModelMapper * mapper()
Returns the current model mapper of this item. Creates new one if necessary.
SessionItem * parent() const
Returns parent of this item.
T * item(const QString &tag) const
std::unique_ptr< OutputData< double > > getTranslatedData(Data1DViewItem *view_item, DataItem *data_item)
void updateAxesTitle(Data1DViewItem *view_item)
QVector< double > fromStdVector(const std::vector< double > &data)
QString const & name(EShape k)