Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itkQuadEdgeMeshMacro.h File Reference

Go to the source code of this file.

Namespaces

namespace  itk

Defines

#define itkQEMeshForAllCellsEndMacro(cellIterator)
#define itkQEMeshForAllCellsMacro(MeshType,MeshInstance,cellIterator)
#define itkQEMeshForAllPointsEndMacro
#define itkQEMeshForAllPrimalEdgesEndMacro
#define itkQEMeshForAllPrimalEdgesMacro(MeshType,MeshInstance,EdgeVariable)
#define itkQEMeshForAllPointsMacro(MeshType,MeshInstance,PointVariable,PointIndex)


Define Documentation

#define itkQEMeshForAllCellsEndMacro ( cellIterator   ) 

Value:

cellIterator++;                                                       \
       } /* while */                                                         \
     } /* if */                                                              \
}
Terminates a block of code started with the macro itkQE::itkQEMeshForAllCellsMacro.

Warning:
Should only be used with the corresponding itkQE::itkQEMeshForAllCellsMacro

Definition at line 130 of file itkQuadEdgeMeshMacro.h.

#define itkQEMeshForAllCellsMacro ( MeshType,
MeshInstance,
cellIterator   ) 

Value:

{                                                                            \
   typedef typename MeshType::CellsContainer CellsContainer;                 \
   typedef typename MeshType::CellsContainerIterator                         \
                              CellsContainerIterator;                        \
   /* If no cells are present, do nothing */                                 \
   if( ! MeshInstance->GetCells( ) )                                         \
     {                                                                       \
     itkWarningMacro( "No Cells container in itkQEMeshForAllCellsMacro" );   \
     }                                                                       \
   else                                                                      \
     {                                                                       \
     CellsContainerIterator cellIterator = MeshInstance->GetCells()->Begin();\
     while( cellIterator != MeshInstance->GetCells()->End() )                \
       {                                                                     \
Iterate on all the MeshType::Cells of a given itkQE::Mesh instance.

Parameters:
MeshType The type of the itkQE::MeshType
MeshInstance The instance of the above MeshType we are considering
cellIterator The name of the variable the caller wants to use to designate the MeshType::CellContainerIterator at current stage of iteration.
Author:
Alexandre Gouaillard, Leonardo Florez-Valencia, Eric Boix
This implementation was contributed as a paper to the Insight Journal http://insight-journal.org/midas/handle.php?handle=1926/306

Warning:
Don't forget to close the opened block with the corresponding itkQE::itkQEMeshForAllCellsEndMacro macro.

Definition at line 106 of file itkQuadEdgeMeshMacro.h.

#define itkQEMeshForAllPointsEndMacro

Value:

pointIterator++;                                                      \
       } /* while */                                                         \
     } /* if */                                                              \
}
Terminates a block of code started with the macro itkQE::itkQEMeshForAllPointsMacro.

Warning:
Should only be used with the corresponding itkQE::itkQEMeshForAllPointsMacro

Definition at line 78 of file itkQuadEdgeMeshMacro.h.

#define itkQEMeshForAllPointsMacro ( MeshType,
MeshInstance,
PointVariable,
PointIndex   ) 

Value:

{                                                                            \
   typedef typename MeshType::PointType       PointType;                     \
   typedef typename MeshType::PointIdentifier PointIdentifier;               \
   typedef typename MeshType::PointsContainer PointsContainer;               \
   typedef typename MeshType::PointsContainerIterator                        \
                                              PointsContainerIterator;       \
                                                                             \
   PointsContainer* points = (MeshInstance)->GetPoints( );                   \
   /* If no points container are present, do nothing */                      \
   if( ! points )                                                            \
     {                                                                       \
     itkWarningMacro( "No point container in itkQEMeshForAllPointsMacro" );  \
     }                                                                       \
   else                                                                      \
     {                                                                       \
     PointsContainerIterator pointIterator = points->Begin();                \
     while( pointIterator != points->End( ) )                                \
       {                                                                     \
       PointType PointVariable = pointIterator.Value( );                     \
       PointIdentifier PointIndex = pointIterator.Index( );
Iterate on all the itkQE::Points of a given itkQE::Mesh instance.

Parameters:
MeshType The type of the itkQE::MeshType
MeshInstance The instance of the above MeshType we are considering
PointVariable The name of the variable the caller wants to use to designate the MeshType::PointType at current stage of iteration. The variable PointVariable is of type itkQE::Mesh::PointType.
PointIndex The name of the variable the caller wants to use to designate the index within the MeshType::PointContainer container and corresponding to PointVariable at current stage of iteration. The variable PointIndex is of type itkQE::Mesh::PointIdentifier .
Author:
Alexandre Gouaillard, Leonardo Florez-Valencia, Eric Boix
This implementation was contributed as a paper to the Insight Journal http://insight-journal.org/midas/handle.php?handle=1926/306

Warning:
Don't forget to close the opened block with the corresponding itkQE::itkQEMeshForAllPointsMacro macro.

Definition at line 49 of file itkQuadEdgeMeshMacro.h.

#define itkQEMeshForAllPrimalEdgesEndMacro

Value:

} /* fi */                                                             \
   }                                                                         \
   itkQEMeshForAllCellsEndMacro                                              \
}
Terminates a block of code started with the macro itkQE::itkQEMeshForAllPrimalEdgesMacro.

Warning:
Should only be used with the corresponding itkQE::itkQEMeshForAllPrimalEdgesMacro

Definition at line 172 of file itkQuadEdgeMeshMacro.h.

#define itkQEMeshForAllPrimalEdgesMacro ( MeshType,
MeshInstance,
EdgeVariable   ) 

Value:

{                                                                            \
   typedef typename MeshType::QEPrimal QEPrimal;                             \
                                                                             \
   itkQEMeshForAllCellsMacro( MeshType, MeshInstance, cellIterator )         \
   {                                                                         \
      if( QEPrimal* EdgeVariable =                                           \
                        dynamic_cast< QEPrimal* >( cellIterator.Value( ) ) ) \
      {                                                                      \
Iterate on all the MeshType::QEPrimal* of a given itkQE::Mesh instance.

Parameters:
MeshType The type of the itkQE::MeshType
MeshInstance The instance of the above MeshType we are considering
EdgeVariable The name of the variable the caller wants to use to designate the MeshType::QEPrimal* at current stage of iteration.
Author:
Alexandre Gouaillard, Leonardo Florez-Valencia, Eric Boix
This implementation was contributed as a paper to the Insight Journal http://insight-journal.org/midas/handle.php?handle=1926/306

Warning:
Don't forget to close the opened block with the corresponding itkQE::itkQEMeshForAllPrimalEdgesMacro macro.

Definition at line 155 of file itkQuadEdgeMeshMacro.h.


Generated at Tue Sep 15 05:32:28 2009 for ITK by doxygen 1.5.8 written by Dimitri van Heesch, © 1997-2000