cyclic dependency between InstrumentItem and PointwiseAxisItem
Complications in GUI/Model are blocking progress on #71 (closed).
Class PointwiseAxisItem
has member pointer m_instrumentItem
,
which is read by fcts PointwiseAxisItem::itemToAxis
and PointwiseAxisItem::updateAxIndicators
.
Fct PointwiseAxisItem::itemToAxis
overrides BasicAxisItem::itemToAxis
. Either of these is called from ScanningFunctionality::createScan
or in file InstrumentItems.cpp.SpecularInstrumentItem::createCoordSystem
, both
The call in SpecularInstrumentItem::createCoordSystem
prevents us from simply passing the converter down.
Fct PointwiseAxisItem::updateAxIndicators
is called (1) from InstrumentNotifier::notifyWavelengthDistributionChanged
; that class has a m_instrumentItem
;
and (2) from GrazingScanItem::initDiscreteAxis
, which is called from ScanItem::updateToData
, which is called from SpecularInstrumentItem::updateToRealData
(part of the machinery is implemented for all types of scanning instruments, but actual synchronisation with external data is provided for specular instruments only).