Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Data Structures | Public Member Functions | Protected Attributes
__1DSortOut Class Reference

#include <G4KDMap.hh>

Data Structures

struct  sortOutNDim
 

Public Member Functions

 __1DSortOut (int dimension)
 
int GetDimension ()
 
G4KDNodeGetMidle (int &G4KDNode_deque)
 
std::deque< G4KDNode * >::iterator Insert (G4KDNode *)
 
G4KDNodePopOutMiddle ()
 
void Sort ()
 
void Erase (std::deque< G4KDNode * >::iterator &)
 

Protected Attributes

std::deque< G4KDNode * > fContainer
 
sortOutNDim fSortOutNDim
 

Detailed Description

Definition at line 38 of file G4KDMap.hh.

Constructor & Destructor Documentation

__1DSortOut::__1DSortOut ( int  dimension)

Definition at line 34 of file G4KDMap.cc.

34  : fSortOutNDim(dimension)
35 {}
sortOutNDim fSortOutNDim
Definition: G4KDMap.hh:70

Member Function Documentation

void __1DSortOut::Erase ( std::deque< G4KDNode * >::iterator &  deq_pos)

Definition at line 68 of file G4KDMap.cc.

References fContainer.

69 {
70  fContainer.erase(deq_pos);
71 }
std::deque< G4KDNode * > fContainer
Definition: G4KDMap.hh:69
int __1DSortOut::GetDimension ( )

Definition at line 37 of file G4KDMap.cc.

References __1DSortOut::sortOutNDim::fDimension, and fSortOutNDim.

38 {
39  return fSortOutNDim.fDimension;
40 }
sortOutNDim fSortOutNDim
Definition: G4KDMap.hh:70
G4KDNode * __1DSortOut::GetMidle ( int G4KDNode_deque)

Definition at line 42 of file G4KDMap.cc.

References fContainer, and int().

Referenced by PopOutMiddle().

43 {
44  int contSize = fContainer.size();
45  main_middle = (int) ceil(contSize/2.); // ceil = round up
46  return fContainer[main_middle];
47 }
typedef int(XMLCALL *XML_NotStandaloneHandler)(void *userData)
std::deque< G4KDNode * > fContainer
Definition: G4KDMap.hh:69
_deq_iterator __1DSortOut::Insert ( G4KDNode pos)

Definition at line 49 of file G4KDMap.cc.

References fContainer.

50 {
51  return fContainer.insert(fContainer.end(),pos);
52 }
std::deque< G4KDNode * > fContainer
Definition: G4KDMap.hh:69
G4KDNode * __1DSortOut::PopOutMiddle ( )

Definition at line 54 of file G4KDMap.cc.

References fContainer, and GetMidle().

55 {
56  int middle;
57  G4KDNode* pos = GetMidle(middle);
58  _deq_iterator deq_pos = fContainer.begin()+middle;
59  fContainer.erase(deq_pos);
60  return pos;
61 }
G4KDNode * GetMidle(int &G4KDNode_deque)
Definition: G4KDMap.cc:42
std::deque< G4KDNode * > fContainer
Definition: G4KDMap.hh:69
std::deque< G4KDNode * >::iterator _deq_iterator
Definition: G4KDMap.cc:32
void __1DSortOut::Sort ( )

Definition at line 63 of file G4KDMap.cc.

References fContainer, fSortOutNDim, and sort().

64 {
65  sort(fContainer.begin(),fContainer.end(),fSortOutNDim);
66 }
subroutine sort(A, N)
Definition: dpm25nuc7.f:4670
std::deque< G4KDNode * > fContainer
Definition: G4KDMap.hh:69
sortOutNDim fSortOutNDim
Definition: G4KDMap.hh:70

Field Documentation

std::deque<G4KDNode*> __1DSortOut::fContainer
protected

Definition at line 69 of file G4KDMap.hh.

Referenced by Erase(), GetMidle(), Insert(), PopOutMiddle(), and Sort().

sortOutNDim __1DSortOut::fSortOutNDim
protected

Definition at line 70 of file G4KDMap.hh.

Referenced by GetDimension(), and Sort().


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