NAMD
Public Member Functions | Public Attributes | List of all members
patch_sortop_curve_a Struct Reference

Public Member Functions

 patch_sortop_curve_a (PatchMap *m)
 
bool operator() (int p1, int p2) const
 

Public Attributes

PatchMappmap
 

Detailed Description

Definition at line 2034 of file WorkDistrib.C.

Constructor & Destructor Documentation

◆ patch_sortop_curve_a()

patch_sortop_curve_a::patch_sortop_curve_a ( PatchMap m)
inline

Definition at line 2036 of file WorkDistrib.C.

2036 : pmap(m) {}

Member Function Documentation

◆ operator()()

bool patch_sortop_curve_a::operator() ( int  p1,
int  p2 
) const
inline

Definition at line 2037 of file WorkDistrib.C.

References PatchMap::index_a(), PatchMap::index_b(), PatchMap::index_c(), and pmap.

2037  {
2038  int a1 = pmap->index_a(p1);
2039  int a2 = pmap->index_a(p2);
2040  if ( a1 < a2 ) return true;
2041  if ( a1 > a2 ) return false;
2042  int dir = ( (a1 & 1) ? -1 : 1 );
2043  int b1 = pmap->index_b(p1);
2044  int b2 = pmap->index_b(p2);
2045  if ( b1 * dir < b2 * dir ) return true;
2046  if ( b1 * dir > b2 * dir ) return false;
2047  dir *= ( (b1 & 1) ? -1 : 1 );
2048  int c1 = pmap->index_c(p1);
2049  int c2 = pmap->index_c(p2);
2050  if ( c1 * dir < c2 * dir ) return true;
2051  return false;
2052  }
int index_a(int pid) const
Definition: PatchMap.h:86
int index_b(int pid) const
Definition: PatchMap.h:87
int index_c(int pid) const
Definition: PatchMap.h:88

Member Data Documentation

◆ pmap

PatchMap* patch_sortop_curve_a::pmap

Definition at line 2035 of file WorkDistrib.C.

Referenced by operator()().


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