iso::space::NeighborGroupAlg Class Reference

#include <iso_space_neighbor_group_alg.h>

Inherited by iso::space::NeighborGroupShapeAlg.

Inheritance diagram for iso::space::NeighborGroupAlg:

Inheritance graph
[legend]
Collaboration diagram for iso::space::NeighborGroupAlg:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 NeighborGroupAlg ()
 create neighbor algorithm
 NeighborGroupAlg (real pNeighborRadius, int pMaxNeighborCount, bool pReplaceNeighborMode)
 create neighbor algorithm
 NeighborGroupAlg (NeighborGroupAlg &pNeighborGroupAlg)
 copy constructor
virtual ~NeighborGroupAlg ()
 destructor
void setNeighborGroup (NeighborGroup *pNeighborGroup)
 pass pointer to neigbhbor group
real neighborRadius () const
 returns neighbor search radius
int maxNeighborCount () const
 return maximum number of neighbors
bool replaceNeighborMode () const
 return neighbor replacement mode
virtual bool full () const
 check whether more neighbors can be stored
void setNeighborRadius (real pNeighborRadius)
 set neighbor radius
virtual bool createNeighbor (SpaceObject *pObject1, SpaceObject *pObject2)
 add Neighbor
virtual bool createNeighbor (SpaceObject *pObject1, SpaceObject *pObject2, real pDistance, const math::Vector< real > &pDirection)
 add Neighbor
virtual bool createNeighbor (SpaceObject *pObject1, SpaceObject *pObject2, const math::Vector< real > &pValue, const math::Vector< real > &pDirection, real pDistance)
 add Neighbor
virtual void removeNeighbor (SpaceObject *pNeighborObject)
 remove neighbor
virtual void removeNeighbor (unsigned int pNeighborIndex)
 remove neighbor
virtual void removeNeighbors ()
 removes all neighbors from list
virtual base::String info (int pPropagationLevel=0) const
 print neighbor algorithm information

Static Public Attributes

static const base::String sClassName
 class name

Protected Attributes

real mNeighborRadius
 search radius for finding neighbors
int mMaxNeighborCount
 maximum number of neighbors in neighbor list
bool mReplaceNeighborMode
 replace more distant neighbors with closer neighbors
NeighborGroupmNeighborGroup
 pointer to space neighbors
math::Vector< realmNeighborDirection

Static Protected Attributes

static real sNeighborRadius
 default search radius for finding neighbors
static int sMaxNeighborCount
 default maximum number of neighbors in neighbor list
static bool sReplaceNeighborMode
 default replace more distant neighbors with closer neighbors

Friends

std::ostream & operator<< (std::ostream &pOstream, const NeighborGroupAlg &pNeighborGroupAlg)
 retrieve textual neighbor algorithm info

Constructor & Destructor Documentation

NeighborGroupAlg::NeighborGroupAlg (  ) 

create neighbor algorithm

NeighborGroupAlg::NeighborGroupAlg ( real  pNeighborRadius,
int  pMaxNeighborCount,
bool  pReplaceNeighborMode 
)

create neighbor algorithm

Parameters:
pNeighborRadius radius within which neighbors are searched
pMaxNeighborCount maximum number of neighbors in neighbor list if >= 0 (-1: no limit)
pReplaceNeighborMode replace more distant neighbors with closer neighbors if true

NeighborGroupAlg::NeighborGroupAlg ( NeighborGroupAlg pNeighborGroupAlg  ) 

copy constructor

Parameters:
pNeighborGroupAlg neighbor algorithm to copy

NeighborGroupAlg::~NeighborGroupAlg (  )  [virtual]

destructor


Member Function Documentation

void NeighborGroupAlg::setNeighborGroup ( NeighborGroup pNeighborGroup  ) 

pass pointer to neigbhbor group

Parameters:
pNeighborGroup neighbor group

space::real NeighborGroupAlg::neighborRadius (  )  const

returns neighbor search radius

Returns:
neighbor search radius

int NeighborGroupAlg::maxNeighborCount (  )  const

return maximum number of neighbors

Returns:
maximum number of neighbors

bool NeighborGroupAlg::replaceNeighborMode (  )  const

return neighbor replacement mode

Returns:
neighbor replacement mode

bool NeighborGroupAlg::full (  )  const [virtual]

check whether more neighbors can be stored

void NeighborGroupAlg::setNeighborRadius ( real  pNeighborRadius  ) 

set neighbor radius

Parameters:
pNeighborRadius neighbor radius

bool NeighborGroupAlg::createNeighbor ( SpaceObject pObject1,
SpaceObject pObject2 
) [virtual]

add Neighbor

Parameters:
pObject1 the space object a neighbor will be added to
pObject2 the neighbor space object
Returns:
whether neighbor has been created or not

Reimplemented in iso::space::NeighborGroupShapeAlg.

bool NeighborGroupAlg::createNeighbor ( SpaceObject pObject1,
SpaceObject pObject2,
real  pDistance,
const math::Vector< real > &  pDirection 
) [virtual]

add Neighbor

Parameters:
pObject1 the space object a neighbor will be added to
pObject2 the neighbor space object
pDistance distance
pDirection direction
Returns:
whether neighbor has been created or not

bool NeighborGroupAlg::createNeighbor ( SpaceObject pObject1,
SpaceObject pObject2,
const math::Vector< real > &  pValue,
const math::Vector< real > &  pDirection,
real  pDistance 
) [virtual]

add Neighbor

Parameters:
pObject1 the space object a neighbor will be added to
pObject2 the neighbor space object
pValue value
pDirection direction
pDistance distance
Returns:
whether neighbor has been created or not

void NeighborGroupAlg::removeNeighbor ( SpaceObject pNeighborObject  )  [virtual]

remove neighbor

Parameters:
pNeighborObject neighbor space object

void NeighborGroupAlg::removeNeighbor ( unsigned int  pNeighborIndex  )  [virtual]

remove neighbor

Parameters:
pNeighborIndex index of neighbor space object

void NeighborGroupAlg::removeNeighbors (  )  [virtual]

removes all neighbors from list

base::String NeighborGroupAlg::info ( int  pPropagationLevel = 0  )  const [virtual]

print neighbor algorithm information

Parameters:
pPropagationLevel how far the propagation method proceeds through composite classes (-1: unlimited, 0: no proceeding, >0: limited proceeding)


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  pOstream,
const NeighborGroupAlg pNeighborGroupAlg 
) [friend]

retrieve textual neighbor algorithm info

Parameters:
pOstream output text stream
pNeighborGroupAlg neighbor group algorithm


Member Data Documentation

const base::String NeighborGroupAlg::sClassName [static]

class name

space::real NeighborGroupAlg::sNeighborRadius [static, protected]

default search radius for finding neighbors

int NeighborGroupAlg::sMaxNeighborCount [static, protected]

default maximum number of neighbors in neighbor list

bool NeighborGroupAlg::sReplaceNeighborMode [static, protected]

default replace more distant neighbors with closer neighbors

real iso::space::NeighborGroupAlg::mNeighborRadius [protected]

search radius for finding neighbors

int iso::space::NeighborGroupAlg::mMaxNeighborCount [protected]

maximum number of neighbors in neighbor list

bool iso::space::NeighborGroupAlg::mReplaceNeighborMode [protected]

replace more distant neighbors with closer neighbors

NeighborGroup* iso::space::NeighborGroupAlg::mNeighborGroup [protected]

pointer to space neighbors

math::Vector<real> iso::space::NeighborGroupAlg::mNeighborDirection [protected]


The documentation for this class was generated from the following files:
Generated on Fri Feb 25 14:08:15 2011 for iso_space by  doxygen 1.5.1