GB/GB_ExtraMacros.h File Reference

Go to the source code of this file.

Defines

#define FOR_ALL_PRIMITIVES(gdp, prim)
#define FOR_SAFE_PRIMITIVES(gdp, prim, next_prim)
#define FOR_SAFE_POINTS(gdp, cur_point, next_point)
#define FOR_MASK_PRIMITIVES(gdp, prim, mask)
#define FOR_ALL_GROUP_PRIMITIVES(gdp, grp, prim)
#define FOR_SAFE_GROUP_PRIMITIVES(gdp, grp, prim, next)
#define FOR_ALL_OPT_GROUP_PRIMITIVES(gdp, grp, prim)
#define FOR_ALL_GPOINTS(gdp, ppt)
#define FOR_ALL_GROUP_POINTS(gdp, grp, ppt)
#define FOR_ALL_OPT_GROUP_POINTS(gdp, grp, ppt)
#define FOR_PAIRS_OF_POINTS(gdp1, ppt1, gdp2, ppt2)
#define FOR_PAIRS_OF_GROUP_POINTS(gdp1, grp1, ppt1, gdp2, grp2, ppt2)
#define FOR_PAIRS_OF_PRIMITIVES(gdp1, prim1, gdp2, prim2)
#define FOR_PAIRS_OF_GROUP_PRIMITIVES(gdp1, grp1, prim1, gdp2, grp2, prim2)
#define FOR_PAIRS_OF_OPT_GROUP_PRIMITIVES(gdp1, grp1, prim1, gdp2, grp2, prim2)
#define FOR_ALL_GROUP_EDGES(grp, edge)
#define FOR_SAFE_GROUP_EDGES(grp, edge, next)
#define FOR_ALL_GROUP_BREAKPOINTS(grp, bkp)
#define FOR_ALL_ATTRIBUTES(dict, attribute)
#define FOR_ALL_DETAIL_ATTRIBUTES(gdp, attribute)   FOR_ALL_ATTRIBUTES((gdp)->attribs(), attribute)
#define FOR_ALL_PRIMITIVE_ATTRIBUTES(gdp, attribute)   FOR_ALL_ATTRIBUTES((gdp)->primitiveAttribs(), attribute)
#define FOR_ALL_POINT_ATTRIBUTES(gdp, attribute)   FOR_ALL_ATTRIBUTES((gdp)->pointAttribs(), attribute)
#define FOR_ALL_VERTEX_ATTRIBUTES(gdp, attribute)   FOR_ALL_ATTRIBUTES((gdp)->vertexAttribs(), attribute)


Define Documentation

#define FOR_ALL_ATTRIBUTES ( dict,
attribute   ) 

Value:

for (attribute=dict.getHead(); \
                 attribute; \
                 attribute = (GB_Attribute *)attribute->next())

Definition at line 126 of file GB_ExtraMacros.h.

#define FOR_ALL_DETAIL_ATTRIBUTES ( gdp,
attribute   )     FOR_ALL_ATTRIBUTES((gdp)->attribs(), attribute)

Definition at line 131 of file GB_ExtraMacros.h.

#define FOR_ALL_GPOINTS ( gdp,
ppt   ) 

Value:

for (ppt=(gdp)->points().head(); ppt; \
                ppt=(gdp)->points().next(ppt))
Examples:
SIM/SIM_SolverHair.C, and SOP/SOP_IKSample.C.

Definition at line 59 of file GB_ExtraMacros.h.

#define FOR_ALL_GROUP_BREAKPOINTS ( grp,
bkp   ) 

Value:

for (bkp=(GB_Breakpoint *)(grp)->list().head(); bkp; \
                 bkp=(GB_Breakpoint *)bkp->next())

Definition at line 122 of file GB_ExtraMacros.h.

#define FOR_ALL_GROUP_EDGES ( grp,
edge   ) 

Value:

for (edge=(GB_Edge *)(grp)->list().head(); edge; \
                 edge=(GB_Edge *)edge->next())

Definition at line 113 of file GB_ExtraMacros.h.

#define FOR_ALL_GROUP_POINTS ( gdp,
grp,
ppt   ) 

Value:

for (ppt=(gdp)->points().head(*(grp)); ppt; \
                 ppt=(gdp)->points().next(ppt,*(grp)))
Examples:
POP/POP_CircleForce.C, POP/POP_LocalForce.C, and POP/POP_SpotLight.C.

Definition at line 63 of file GB_ExtraMacros.h.

#define FOR_ALL_GROUP_PRIMITIVES ( gdp,
grp,
prim   ) 

Value:

for (prim=(gdp)->primitives().head(*(grp)); prim; \
                 prim=(gdp)->primitives().next(prim,*(grp)))

Definition at line 42 of file GB_ExtraMacros.h.

#define FOR_ALL_OPT_GROUP_POINTS ( gdp,
grp,
ppt   ) 

Value:

for (ppt = (grp) ? (gdp)->points().head(*(grp))     \
                            : (gdp)->points().head();           \
                 ppt;                                           \
                 ppt = (grp) ? (gdp)->points().next(ppt, *(grp))\
                            : (gdp)->points().next(ppt))
Examples:
SOP/SOP_CustomBrush.C, SOP/SOP_Flatten.C, SOP/SOP_PointWave.C, and SOP/SOP_TimeCompare.C.

Definition at line 67 of file GB_ExtraMacros.h.

#define FOR_ALL_OPT_GROUP_PRIMITIVES ( gdp,
grp,
prim   ) 

Value:

for (prim = (grp) ? (gdp)->primitives().head(*(grp))\
                            : (gdp)->primitives().head();       \
                 prim;                                          \
                 prim = (grp) ? (gdp)->primitives().next(prim, *(grp))\
                            : (gdp)->primitives().next(prim))

Definition at line 52 of file GB_ExtraMacros.h.

#define FOR_ALL_POINT_ATTRIBUTES ( gdp,
attribute   )     FOR_ALL_ATTRIBUTES((gdp)->pointAttribs(), attribute)

Definition at line 137 of file GB_ExtraMacros.h.

#define FOR_ALL_PRIMITIVE_ATTRIBUTES ( gdp,
attribute   )     FOR_ALL_ATTRIBUTES((gdp)->primitiveAttribs(), attribute)

Definition at line 134 of file GB_ExtraMacros.h.

#define FOR_ALL_PRIMITIVES ( gdp,
prim   ) 

Value:

for (prim=(gdp)->primitives().head(); prim; \
                 prim=(gdp)->primitives().next(prim))
Examples:
SOP/SOP_PrimVOP.C, and standalone/geo2voxel.C.

Definition at line 24 of file GB_ExtraMacros.h.

#define FOR_ALL_VERTEX_ATTRIBUTES ( gdp,
attribute   )     FOR_ALL_ATTRIBUTES((gdp)->vertexAttribs(), attribute)

Definition at line 140 of file GB_ExtraMacros.h.

#define FOR_MASK_PRIMITIVES ( gdp,
prim,
mask   ) 

Value:

for (prim=(gdp)->primitives().head(mask); prim; \
                 prim=(gdp)->primitives().next(prim, mask))

Definition at line 38 of file GB_ExtraMacros.h.

#define FOR_PAIRS_OF_GROUP_POINTS ( gdp1,
grp1,
ppt1,
gdp2,
grp2,
ppt2   ) 

Value:

for (ppt1 = (gdp1)->points().head(*(grp1)), \
                 ppt2 = (gdp2)->points().head(*(grp2)); \
                 ppt1 && ppt2; \
                 ppt1 = (gdp1)->points().next(ppt1, *(grp1)), \
                 ppt2 = (gdp2)->points().next(ppt2, *(grp2)))

Definition at line 81 of file GB_ExtraMacros.h.

#define FOR_PAIRS_OF_GROUP_PRIMITIVES ( gdp1,
grp1,
prim1,
gdp2,
grp2,
prim2   ) 

Value:

for (prim1 = (gdp1)->primitives().head(*(grp1)), \
                 prim2 = (gdp2)->primitives().head(*(grp2)); \
                 prim1 && prim2; \
                 prim1 = (gdp1)->primitives().next(prim1, *(grp1)), \
                 prim2 = (gdp2)->primitives().next(prim2, *(grp2)))

Definition at line 95 of file GB_ExtraMacros.h.

#define FOR_PAIRS_OF_OPT_GROUP_PRIMITIVES ( gdp1,
grp1,
prim1,
gdp2,
grp2,
prim2   ) 

Value:

for (prim1 = (grp1) ? (gdp1)->primitives().head(*(grp1)) \
                                : (gdp1)->primitives().head(), \
                 prim2 = (grp2) ? (gdp2)->primitives().head(*(grp2)) \
                                : (gdp2)->primitives().head(); \
                 prim1 && prim2; \
                 prim1 = (grp1) ? (gdp1)->primitives().next(prim1, *(grp1)) \
                                : (gdp1)->primitives().next(prim1), \
                 prim2 = (grp2) ? (gdp2)->primitives().next(prim2, *(grp2)) \
                                : (gdp2)->primitives().next(prim2))

Definition at line 102 of file GB_ExtraMacros.h.

#define FOR_PAIRS_OF_POINTS ( gdp1,
ppt1,
gdp2,
ppt2   ) 

Value:

for (ppt1 = (gdp1)->points().head(), \
                 ppt2 = (gdp2)->points().head(); \
                 ppt1 && ppt2; \
                 ppt1 = (gdp1)->points().next(ppt1), \
                 ppt2 = (gdp2)->points().next(ppt2))

Definition at line 74 of file GB_ExtraMacros.h.

#define FOR_PAIRS_OF_PRIMITIVES ( gdp1,
prim1,
gdp2,
prim2   ) 

Value:

for (prim1 = (gdp1)->primitives().head(), \
                 prim2 = (gdp2)->primitives().head(); \
                 prim1 && prim2; \
                 prim1 = (gdp1)->primitives().next(prim1), \
                 prim2 = (gdp2)->primitives().next(prim2)     )

Definition at line 88 of file GB_ExtraMacros.h.

#define FOR_SAFE_GROUP_EDGES ( grp,
edge,
next   ) 

Value:

for (edge=(GB_Edge *)(grp)->list().head(); \
                 edge && ((next = (GB_Edge *)edge->next()) || 1); \
                 edge=next)

Definition at line 117 of file GB_ExtraMacros.h.

#define FOR_SAFE_GROUP_PRIMITIVES ( gdp,
grp,
prim,
next   ) 

Value:

for (prim = (gdp)->primitives().head(*(grp)); \
                   prim && \
                       ((next = (gdp)->primitives().next(prim, *(grp))) || 1);\
                   prim = next)

Definition at line 46 of file GB_ExtraMacros.h.

#define FOR_SAFE_POINTS ( gdp,
cur_point,
next_point   ) 

Value:

for (cur_point=(gdp)->points().head();          \
             cur_point && ((next_point=(gdp)->points().next(cur_point)) || 1);\
             cur_point=next_point)

Definition at line 33 of file GB_ExtraMacros.h.

#define FOR_SAFE_PRIMITIVES ( gdp,
prim,
next_prim   ) 

Value:

for (prim=(gdp)->primitives().head(); \
                 prim &&((next_prim=(gdp)->primitives().next(prim))||1); \
                 prim=next_prim)

Definition at line 28 of file GB_ExtraMacros.h.


Generated on Mon Jan 28 00:27:48 2013 for HDK by  doxygen 1.5.9