BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
MultiLayerCandidate Class Reference

Class to hold MultiLayer candidate for dropping LayerView. More...

Collaboration diagram for MultiLayerCandidate:
[legend]

Public Member Functions

 MultiLayerCandidate ()
 
QLineF getInterfaceToScene ()
 returns line representing interface of multilayer in scene coordinates More...
 
 operator bool () const
 
bool operator< (const MultiLayerCandidate &cmp) const
 

Public Attributes

int distance
 distance from given ILayerView and drop area More...
 
MultiLayerViewmultilayer
 pointer to the candidate More...
 
int row
 requested row number to drop in More...
 

Detailed Description

Class to hold MultiLayer candidate for dropping LayerView.

Definition at line 55 of file ILayerView.h.

Constructor & Destructor Documentation

◆ MultiLayerCandidate()

MultiLayerCandidate::MultiLayerCandidate ( )
inline

Definition at line 57 of file ILayerView.h.

57 : multilayer(0), row(-1), distance(0) {}
int row
requested row number to drop in
Definition: ILayerView.h:59
MultiLayerView * multilayer
pointer to the candidate
Definition: ILayerView.h:58
int distance
distance from given ILayerView and drop area
Definition: ILayerView.h:60

Member Function Documentation

◆ getInterfaceToScene()

QLineF MultiLayerCandidate::getInterfaceToScene ( )

returns line representing interface of multilayer in scene coordinates

Definition at line 24 of file ILayerView.cpp.

25 {
27  QLineF line = multilayer->getInterfaceLine(row);
28  if (line.length() != 0) {
29  QPointF p1(multilayer->mapToScene(line.p1()));
30  QPointF p2(multilayer->mapToScene(line.p2()));
31  const int prolongation = 20.0;
32  return QLineF(p1.x() - prolongation, p1.y(), p2.x() + prolongation, p2.y());
33  }
34 
35  return QLineF();
36 }
#define ASSERT(condition)
Definition: Assert.h:31
QLineF getInterfaceLine(int row)
Returns line representing interface.

References ASSERT, MultiLayerView::getInterfaceLine(), multilayer, and row.

Referenced by ILayerView::itemChange().

Here is the call graph for this function:

◆ operator bool()

MultiLayerCandidate::operator bool ( ) const
inline

Definition at line 62 of file ILayerView.h.

62 { return bool(multilayer); }

References multilayer.

◆ operator<()

bool MultiLayerCandidate::operator< ( const MultiLayerCandidate cmp) const

Definition at line 38 of file ILayerView.cpp.

39 {
40  return cmp.distance < distance;
41 }

References distance.

Member Data Documentation

◆ distance

int MultiLayerCandidate::distance

distance from given ILayerView and drop area

Definition at line 60 of file ILayerView.h.

Referenced by ILayerView::getMultiLayerCandidate(), and operator<().

◆ multilayer

MultiLayerView* MultiLayerCandidate::multilayer

pointer to the candidate

Definition at line 58 of file ILayerView.h.

Referenced by getInterfaceToScene(), ILayerView::getMultiLayerCandidate(), ILayerView::mouseReleaseEvent(), and operator bool().

◆ row

int MultiLayerCandidate::row

requested row number to drop in

Definition at line 59 of file ILayerView.h.

Referenced by getInterfaceToScene(), ILayerView::getMultiLayerCandidate(), and ILayerView::mouseReleaseEvent().


The documentation for this class was generated from the following files: