Go to the documentation of this file.
29 #define MODEL_OUT PWGM_HGRIDMODEL_OUT_GMIMPL(model)
30 #define BLKMODEL_OUT PWGM_HBLOCK_OUT_GMIMPL(block)
31 #define DOMMODEL_OUT PWGM_HDOMAIN_OUT_GMIMPL(domain)
32 #define VERTMODEL_OUT PWGM_HVERTEX_OUT_GMIMPL(vertex)
33 #define ELEMMODEL_OUT PWGM_HELEMENT_OUT_GMIMPL(element)
34 #define BNDRYMODEL_OUT PWGM_HBNDRY_OUT_GMIMPL(boundary)
35 #define CNXNMODEL_OUT PWGM_HCNXN_OUT_GMIMPL(connection)
37 #define MODEL_IN PWGM_HGRIDMODEL_IN_GMIMPL(model)
38 #define BLKMODEL_IN PWGM_HBLOCK_IN_GMIMPL(block)
39 #define DOMMODEL_IN PWGM_HDOMAIN_IN_GMIMPL(domain)
40 #define CONMODEL_IN PWGM_HCONNECTOR_IN_GMIMPL(connector)
41 #define VLISTMODEL_IN PWGM_HVERTEXLIST_IN_GMIMPL(vertlist)
42 #define BLKASMMODEL_IN PWGM_HBLOCKASSEMBLER_IN_GMIMPL(blkAsm)
44 static const PWGM_HBLOCK badBlock = PWGM_HBLOCK_INIT;
47 #if !defined(PWGM_HIDE_IMPORT_API)
52 static const char * PropSubType{
"SubType" };
53 static const char * PropUserName{
"UserName" };
54 static const char * PropUserId{
"UserId" };
55 static const char * PropTypeName{
"TypeName" };
56 static const char * PropTypeId{
"TypeId" };
58 static const char * SubTypeBoundary{
"Boundary" };
62 #if !defined(PWGM_HIDE_UNSTRUCTURED_API)
67 #if !defined(PWGM_HIDE_STRUCTURED_API)
68 static const PWGM_HBNDRY badBoundary = PWGM_HBNDRY_INIT;
69 static const PWGM_HCNXN badConnection = PWGM_HCNXN_INIT;
74 # define strcasecmp stricmp
75 # define strncasecmp strnicmp
85 return (MODEL_OUT && MODEL_OUT->PwModBlockCountCB) ?
86 MODEL_OUT->PwModBlockCountCB(model) : 0;
93 return (MODEL_OUT && MODEL_OUT->PwModEnumBlocksCB) ?
94 MODEL_OUT->PwModEnumBlocksCB(model, ndx) : badBlock;
102 BLKMODEL_OUT->PwBlkConditionCB) ?
103 BLKMODEL_OUT->PwBlkConditionCB(block, pCondData) :
PWP_FALSE;
111 BLKMODEL_OUT->PwBlockCB) ? BLKMODEL_OUT->PwBlockCB(block, pBlockData) :
120 BLKMODEL_OUT->PwBlkSetExportNameCB) ?
121 BLKMODEL_OUT->PwBlkSetExportNameCB(block, name) :
PWP_FALSE;
129 return (MODEL_OUT && MODEL_OUT->PwModGetAttributeValueCB) ?
130 MODEL_OUT->PwModGetAttributeValueCB(model, name, bufType, buf, count) :
222 #if !defined(PWGM_HIDE_UNSTRUCTURED_API)
228 return (MODEL_OUT && MODEL_OUT->PwModDomainCountCB) ?
229 MODEL_OUT->PwModDomainCountCB(model) : 0;
236 return (MODEL_OUT && MODEL_OUT->PwModEnumDomainsCB) ?
237 MODEL_OUT->PwModEnumDomainsCB(model, ndx) : badDomain;
244 return (MODEL_OUT && MODEL_OUT->PwModEnumVerticesCB) ?
245 MODEL_OUT->PwModEnumVerticesCB(model, ndx) : badVertex;
252 return (MODEL_OUT && MODEL_OUT->PwModVertexCountCB) ?
253 MODEL_OUT->PwModVertexCountCB(model) : 0;
261 return (MODEL_OUT && MODEL_OUT->PwModCustomIndexSchemeReadyCB) ?
262 MODEL_OUT->PwModCustomIndexSchemeReadyCB(model, cb, data) :
PWP_FALSE;
270 return (MODEL_OUT && MODEL_OUT->PwModStreamFacesCB) ?
279 return (MODEL_OUT && MODEL_OUT->PwModEnumElementCountCB) ?
280 MODEL_OUT->PwModEnumElementCountCB(model, pCounts) : 0;
287 return (MODEL_OUT && MODEL_OUT->PwModEnumElementsCB) ?
288 MODEL_OUT->PwModEnumElementsCB(model, ndx) : badElement;
295 return (MODEL_OUT && MODEL_OUT->PwModAppendEnumElementOrderCB) ?
296 MODEL_OUT->PwModAppendEnumElementOrderCB(model, order) : 0;
312 BLKMODEL_OUT->PwBlkElementCountCB(block, pCounts) : 0;
320 BLKMODEL_OUT->PwBlkEnumElementsCB(block, ndx) : badElement;
328 DOMMODEL_OUT->PwDomElementCountCB(domain, pCounts) : 0;
336 DOMMODEL_OUT->PwDomEnumElementsCB(domain, ndx) : badElement;
344 DOMMODEL_OUT->PwDomConditionCB) ?
345 DOMMODEL_OUT->PwDomConditionCB(domain, pCondData) :
PWP_FALSE;
353 VERTMODEL_OUT->PwVertDataModCB) ?
354 VERTMODEL_OUT->PwVertDataModCB(vertex, pVertData) :
PWP_FALSE;
362 VERTMODEL_OUT->PwVertIndexModCB) ?
363 VERTMODEL_OUT->PwVertIndexModCB(vertex, pIndex) :
PWP_FALSE;
371 VERTMODEL_OUT->PwVertXyzValCB) ?
372 VERTMODEL_OUT->PwVertXyzValCB(vertex, which, pVal) :
PWP_FALSE;
380 ELEMMODEL_OUT->PwElemDataModCB) ?
381 ELEMMODEL_OUT->PwElemDataModCB(element, pElemData) :
PWP_FALSE;
389 ELEMMODEL_OUT->PwElemDataModEnumCB) ?
390 ELEMMODEL_OUT->PwElemDataModEnumCB(element, pEnumElemData) :
PWP_FALSE;
396 const char * ret =
"!Invalid";
408 case PWGM_FACEORDER_SIZE:
break;
417 const char * ret =
"!Invalid";
427 case PWGM_ELEMTYPE_SIZE:
433 #endif // !defined(PWGM_HIDE_UNSTRUCTURED_API)
442 #if !defined(PWGM_HIDE_STRUCTURED_API)
448 return (MODEL_OUT && MODEL_OUT->PwModBoundaryCountCB) ?
449 MODEL_OUT->PwModBoundaryCountCB(model) : 0;
456 return (MODEL_OUT && MODEL_OUT->PwModEnumBoundariesCB) ?
457 MODEL_OUT->PwModEnumBoundariesCB(model, ndx) : badBoundary;
464 return (MODEL_OUT && MODEL_OUT->PwModConnectionCountCB) ?
465 MODEL_OUT->PwModConnectionCountCB(model) : 0;
472 return (MODEL_OUT && MODEL_OUT->PwModEnumConnectionsCB) ?
473 MODEL_OUT->PwModEnumConnectionsCB(model, ndx) : badConnection;
481 return (MODEL_OUT && MODEL_OUT->PwModNdxBoundaryCB) ?
482 MODEL_OUT->PwModNdxBoundaryCB(model, ndx, pBndryData) :
491 return (MODEL_OUT && MODEL_OUT->PwModNdxBoundaryAndConditionCB &&
492 (pBndryData || pCondData)) ?
493 MODEL_OUT->PwModNdxBoundaryAndConditionCB(model, ndx, pBndryData,
502 return (MODEL_OUT && MODEL_OUT->PwModNdxConnectionCB && pCnxnData) ?
503 MODEL_OUT->PwModNdxConnectionCB(model, ndx, pCnxnData) :
PWP_FALSE;
510 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkSizeCB) ?
511 BLKMODEL_OUT->PwBlkSizeCB(block, pSize) :
PWP_FALSE;
518 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkNdxVertDataCB) ?
519 BLKMODEL_OUT->PwBlkNdxVertDataCB(block, ndx3, pVertData) :
PWP_FALSE;
527 return (MODEL_OUT && MODEL_OUT->PwModCustomIndex3SchemeReadyCB) ?
528 MODEL_OUT->PwModCustomIndex3SchemeReadyCB(model, cb, data) :
PWP_FALSE;
535 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkBoundaryCountCB) ?
536 BLKMODEL_OUT->PwBlkBoundaryCountCB(block) : 0;
543 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkEnumBoundariesCB) ?
544 BLKMODEL_OUT->PwBlkEnumBoundariesCB(block, ndx) : badBoundary;
551 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkConnectionCountCB) ?
552 BLKMODEL_OUT->PwBlkConnectionCountCB(block) : 0;
559 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkEnumConnectionsCB) ?
560 BLKMODEL_OUT->PwBlkEnumConnectionsCB(block, ndx) : badConnection;
567 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkNdxBoundaryCB && pBndryData) ?
568 BLKMODEL_OUT->PwBlkNdxBoundaryCB(block, ndx, pBndryData) :
PWP_FALSE;
576 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkNdxBoundaryAndConditionCB &&
577 (pBndryData || pCondData)) ?
578 BLKMODEL_OUT->PwBlkNdxBoundaryAndConditionCB(block, ndx, pBndryData,
586 return (BLKMODEL_OUT && BLKMODEL_OUT->PwBlkNdxConnectionCB && pCnxnData) ?
587 BLKMODEL_OUT->PwBlkNdxConnectionCB(block, ndx, pCnxnData) :
PWP_FALSE;
594 return (BNDRYMODEL_OUT && BNDRYMODEL_OUT->PwBoundaryCB && pBndryData) ?
595 BNDRYMODEL_OUT->PwBoundaryCB(boundary, pBndryData) :
PWP_FALSE;
602 return (BNDRYMODEL_OUT && BNDRYMODEL_OUT->PwBndryConditionCB) ?
603 BNDRYMODEL_OUT->PwBndryConditionCB(boundary, pCondData) :
PWP_FALSE;
610 return (CNXNMODEL_OUT && CNXNMODEL_OUT->PwConnectionCB && pCnxnData) ?
611 CNXNMODEL_OUT->PwConnectionCB(connection, pCnxnData) :
PWP_FALSE;
626 pX3->
m[0][0] = pX2->
m[0][0];
627 pX3->
m[0][1] = pX2->
m[0][1];
629 pX3->
m[0][0] = pX2->
m[0][2];
631 pX3->
m[1][0] = pX2->
m[1][0];
632 pX3->
m[1][1] = pX2->
m[1][1];
634 pX3->
m[1][0] = pX2->
m[1][2];
656 pX2->
m[0][0] = pX3->
m[0][0];
657 pX2->
m[0][1] = pX3->
m[0][1];
658 pX2->
m[0][2] = pX3->
m[0][3];
660 pX2->
m[1][0] = pX3->
m[1][0];
661 pX2->
m[1][1] = pX3->
m[1][1];
662 pX2->
m[1][2] = pX3->
m[1][3];
672 ret.
i = pX3->
m[0][0] * ijk.
i + pX3->
m[0][1] * ijk.
j + pX3->
m[0][2] * ijk.
k
674 ret.
j = pX3->
m[1][0] * ijk.
i + pX3->
m[1][1] * ijk.
j + pX3->
m[1][2] * ijk.
k
676 ret.
k = pX3->
m[2][0] * ijk.
i + pX3->
m[2][1] * ijk.
j + pX3->
m[2][2] * ijk.
k
697 case PWGM_IJK_SIZE:
break;
700 ijk2.
i = pX3->
m[0][0] * ijk.
i + pX3->
m[0][1] * ijk.
j + pX3->
m[0][2] * ijk.
k;
701 ijk2.
j = pX3->
m[1][0] * ijk.
i + pX3->
m[1][1] * ijk.
j + pX3->
m[1][2] * ijk.
k;
702 ijk2.
k = pX3->
m[2][0] * ijk.
i + pX3->
m[2][1] * ijk.
j + pX3->
m[2][2] * ijk.
k;
704 if ((0 != ijk2.
i) && (0 == ijk2.
j) && (0 == ijk2.
k)) {
710 else if ((0 != ijk2.
j) && (0 == ijk2.
i) && (0 == ijk2.
k)) {
716 else if ((0 != ijk2.
k) && (0 == ijk2.
i) && (0 == ijk2.
j)) {
722 return transformedAxis;
730 ret.
i = pX2->
m[0][0] * ijk.
i + pX2->
m[0][1] * ijk.
j + pX2->
m[0][2];
731 ret.
j = pX2->
m[1][0] * ijk.
i + pX2->
m[1][1] * ijk.
j + pX2->
m[1][2];
753 return (ijk.
i >= pRange->
beg.
i) && (ijk.
i <= pRange->
end.
i) &&
754 (ijk.
j >= pRange->
beg.
j) && (ijk.
j <= pRange->
end.
j) &&
755 (ijk.
k >= pRange->
beg.
k) && (ijk.
k <= pRange->
end.
k);
758 #endif // !defined(PWGM_HIDE_STRUCTURED_API)
767 #if !defined(PWGM_HIDE_IMPORT_API)
772 return (MODEL_IN && MODEL_IN->PwModCreateConCB) ?
773 MODEL_IN->PwModCreateConCB(model, size) : badConnector;
780 return (BLKMODEL_IN && BLKMODEL_IN->PwBlkGetVertexListCB) ?
781 BLKMODEL_IN->PwBlkGetVertexListCB(block) : badVertexList;
788 return (DOMMODEL_IN && DOMMODEL_IN->PwDomGetVertexListCB) ?
789 DOMMODEL_IN->PwDomGetVertexListCB(domain) : badVertexList;
796 return (CONMODEL_IN && CONMODEL_IN->PwConGetVertexListCB) ?
797 CONMODEL_IN->PwConGetVertexListCB(connector) : badVertexList;
804 return (CONMODEL_IN && CONMODEL_IN->PwConSetNameCB) ?
805 CONMODEL_IN->PwConSetNameCB(connector, name) :
PWP_FALSE;
812 return (BLKMODEL_IN && BLKMODEL_IN->PwBlkSetNameCB) ?
813 BLKMODEL_IN->PwBlkSetNameCB(block, name) :
PWP_FALSE;
820 return (DOMMODEL_IN && DOMMODEL_IN->PwDomSetNameCB) ?
821 DOMMODEL_IN->PwDomSetNameCB(domain, name) :
PWP_FALSE;
828 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstIsUnstructuredCB) ?
829 VLISTMODEL_IN->PwVlstIsUnstructuredCB(vertlist) :
PWP_FALSE;
836 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstIsUnstructuredCB) ?
837 !VLISTMODEL_IN->PwVlstIsUnstructuredCB(vertlist) :
PWP_FALSE;
844 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstGetIndexDimensionalityCB) ?
845 VLISTMODEL_IN->PwVlstGetIndexDimensionalityCB(vertlist) : 0;
852 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstGetBlkElemDimensionalityCB) ?
853 VLISTMODEL_IN->PwVlstGetBlkElemDimensionalityCB(vertlist) :
863 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZVal3CB) ?
864 VLISTMODEL_IN->PwVlstSetXYZVal3CB(vertlist, ndx3, which, val) :
874 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZ3CB) ?
875 VLISTMODEL_IN->PwVlstSetXYZ3CB(vertlist, ndx3, x, y, z) :
PWP_FALSE;
884 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZ3CB) ?
885 VLISTMODEL_IN->PwVlstSetXYZ3CB(vertlist, ndx3, v.
x, v.
y, v.
z) :
895 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZVal3CB) ?
896 VLISTMODEL_IN->PwVlstSetXYZVal3CB(vertlist, ndx3, which, val) :
906 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZ3CB) ?
907 VLISTMODEL_IN->PwVlstSetXYZ3CB(vertlist, ndx3, x, y, z) :
PWP_FALSE;
916 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZ3CB) ?
917 VLISTMODEL_IN->PwVlstSetXYZ3CB(vertlist, ndx3, v.
x, v.
y, v.
z) :
926 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZVal3CB) ?
927 VLISTMODEL_IN->PwVlstSetXYZVal3CB(vertlist, ndx3, which, val) :
936 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZ3CB) ?
937 VLISTMODEL_IN->PwVlstSetXYZ3CB(vertlist, ndx3, x, y, z) :
PWP_FALSE;
945 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstSetXYZ3CB) ?
946 VLISTMODEL_IN->PwVlstSetXYZ3CB(vertlist, ndx3, v.
x, v.
y, v.
z) :
954 return (BLKMODEL_IN && BLKMODEL_IN->PwBlkSetPropertyCB) ?
955 BLKMODEL_IN->PwBlkSetPropertyCB(block, key, val) :
PWP_FALSE;
962 return (DOMMODEL_IN && DOMMODEL_IN->PwDomSetPropertyCB) ?
963 DOMMODEL_IN->PwDomSetPropertyCB(domain, key, val) :
PWP_FALSE;
970 return (CONMODEL_IN && CONMODEL_IN->PwConSetPropertyCB) ?
971 CONMODEL_IN->PwConSetPropertyCB(connector, key, val) :
PWP_FALSE;
977 const char *key,
const char *val)
979 return (BLKASMMODEL_IN && BLKASMMODEL_IN->PwAsmSetPropertyCB) ?
980 BLKASMMODEL_IN->PwAsmSetPropertyCB(blkAsm, propertySetId, key, val) :
995 std::ostringstream oss;
1011 std::ostringstream oss;
1038 std::ostringstream oss;
1054 std::ostringstream oss;
1081 std::ostringstream oss;
1097 std::ostringstream oss;
1116 const char *userName)
1126 std::ostringstream oss;
1134 const char *typeName)
1144 std::ostringstream oss;
1167 return (BLKASMMODEL_IN && BLKASMMODEL_IN->PwAsmSetCellSpanConditionKeyCB) ?
1168 BLKASMMODEL_IN->PwAsmSetCellSpanConditionKeyCB(blkAsm, key, startCell, endCell) :
1183 const PWGM_XYZ_CLUSTERING fileClustering,
1186 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstReadFileCB) ?
1187 VLISTMODEL_IN->PwVlstReadFileCB(vertlist, file, fileClustering,
1188 fileByteOrder, filePrecision) :
PWP_FALSE;
1196 return (MODEL_IN && MODEL_IN->PwModCreateUnsVertexListCB) ?
1197 MODEL_IN->PwModCreateUnsVertexListCB(model, blkElemDimty) :
1219 return VLISTMODEL_IN && VLISTMODEL_IN->PwVlstAllocateCB &&
1220 VLISTMODEL_IN->PwVlstAllocateCB(vertlist, n);
1227 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstCreateUnsBlockCB) ?
1228 VLISTMODEL_IN->PwVlstCreateUnsBlockCB(vertlist) : badBlock;
1236 return (BLKMODEL_IN && BLKMODEL_IN->PwUnsBlkAllocateElementsCB) ?
1237 BLKMODEL_IN->PwUnsBlkAllocateElementsCB(block, cellType, count) :
1269 return (BLKMODEL_IN && BLKMODEL_IN->PwUnsBlkSetElementCB) ?
1270 BLKMODEL_IN->PwUnsBlkSetElementCB(block, ndx, eData) :
PWP_FALSE;
1277 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstCreateUnsDomainCB) ?
1278 VLISTMODEL_IN->PwVlstCreateUnsDomainCB(vertlist) : badDomain;
1288 hDom = PWGM_HDOMAIN_INIT;
1298 return (DOMMODEL_IN && DOMMODEL_IN->PwUnsDomAllocateElementsCB) ?
1299 DOMMODEL_IN->PwUnsDomAllocateElementsCB(domain, cellType, n):
PWP_FALSE;
1317 return (DOMMODEL_IN && DOMMODEL_IN->PwUnsDomSetElementCB) ?
1318 DOMMODEL_IN->PwUnsDomSetElementCB(domain, ndx, eData) :
PWP_FALSE;
1325 return (VLISTMODEL_IN && VLISTMODEL_IN->PwVlstCreateBlockAssemblerCB) ?
1326 VLISTMODEL_IN->PwVlstCreateBlockAssemblerCB(vertlist) : badAssembler;
1334 return (BLKASMMODEL_IN && BLKASMMODEL_IN->PwAsmPushElementFaceCB) ?
1335 BLKASMMODEL_IN->PwAsmPushElementFaceCB(blkAsm, face) :
PWP_FALSE;
1342 return (BLKASMMODEL_IN && BLKASMMODEL_IN->PwAsmFinalizeCB) ?
1343 BLKASMMODEL_IN->PwAsmFinalizeCB(blkAsm) :
PWP_FALSE;
1350 return (BLKASMMODEL_IN && BLKASMMODEL_IN->PwAsmGetVertexListCB) ?
1351 BLKASMMODEL_IN->PwAsmGetVertexListCB(blkAsm) : badVertexList;
1358 return (MODEL_IN && MODEL_IN->PwModCreateStrBlockCB) ?
1359 MODEL_IN->PwModCreateStrBlockCB(model, blkSize) : badBlock;
1366 return (MODEL_IN && MODEL_IN->PwModCreateStrDomainCB) ?
1367 MODEL_IN->PwModCreateStrDomainCB(model, domSize) : badDomain;
1370 #endif // !defined(PWGM_HIDE_IMPORT_API)
static PWP_UINT32 faceCB(PWGM_FACESTREAM_DATA *data)
PWP_INT32 j
j-coordinate used for 3D and 2D grids
@ PWP_VALTYPE_STRING
transfer value is a const char*
PWP_BOOL PwAsmSetCellConditionKey(PWGM_HBLOCKASSEMBLER assembler, const PWGM_CONDKEY key, const PWP_UINT32 cell)
Tags a single cells with the condition identified by key.
PWGM_HBLOCK PwVlstCreateUnsBlock(PWGM_HVERTEXLIST vertlist)
Creates an unstructured block that uses vertices from an unstructured vertex list.
Grid element handle declaration.
@ PWGM_FACEORDER_BCGROUPSONLY
BoundaryOnly grouped by BCs.
PWP_BOOL PwBlkNdxVertData(PWGM_HBLOCK block, PWGM_INDEX3 ndx3, PWGM_VERTDATA *pVertData)
Get the block's vertex data at the given index location.
PWP_BOOL PwElemDataModEnum(PWGM_HELEMENT element, PWGM_ENUMELEMDATA *pEnumElemData)
Get the enumerated element data relative to the model's index space.
An opaque handle to an unstructured block assembler.
PWGM_HDOMAIN PwVlstCreateUnsBoundary(PWGM_HVERTEXLIST vertlist)
PWP_BOOL PwModNdxBoundary(PWGM_HGRIDMODEL model, PWP_UINT32 ndx, PWGM_BNDRYDATA *pBndryData)
Get the data for the model's nth structured boundary.
PWGM_HVERTEX PwModEnumVertices(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model vertex elements.
PWP_BOOL PwVertIndexMod(PWGM_HVERTEX vertex, PWP_UINT32 *pIndex)
Get the vertex index relative to the model's index space.
PWGM_HVERTEXLIST PwModCreateUnsVertexList2(PWGM_HGRIDMODEL model)
Creates an empty, unstructured vertex list in a model for 2-D blocks and 1-D domains.
PWP_UINT32 PwDomElementCount(PWGM_HDOMAIN domain, PWGM_ELEMCOUNTS *pCounts)
Get the number of domain elements.
PWP_BOOL PwVlstSetXYZ2(PWGM_HVERTEXLIST vertlist, const PWGM_INDEX2 ndx2, const PWGM_XYZVAL x, const PWGM_XYZVAL y, const PWGM_XYZVAL z)
Set the XYZ of a point in a 2D structured vertex list.
const char * PwFaceOrderToText(PWGM_ENUM_FACEORDER faceOrder)
Maps a PWGM_ENUM_FACEORDER value to a human readable string.
PWP_BOOL PwVlstSetXYZ2Data(PWGM_HVERTEXLIST vertlist, const PWGM_INDEX2 ndx2, const PWGM_VERTDATA &v)
Set the XYZ of a point in a 2D structured vertex list using a PWGM_VERTDATA value.
PWGM_HDOMAIN PwModEnumDomains(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model domain elements.
PWGM_ENUM_IJK PwXform2Follows(const PWGM_INDEX_XFORM2 *pX2, PWGM_ENUM_IJK localAxis, PWP_BOOL *pFlipped)
For a given localAxis, determine the corresponding axis in the transformed system.
PWP_BOOL PwVlstSetXYZVal2(PWGM_HVERTEXLIST vertlist, const PWGM_INDEX2 ndx2, const PWGM_ENUM_XYZ which, const PWGM_XYZVAL val)
Set an XYZ component of a point in a 2D structured vertex list.
PWP_ENUM_VALTYPE
Supported PWP-API getValue() transfer types.
@ PWGM_ELEMTYPE_TET
3D, 4-sided (tetrahedral) grid element
PWP_BOOL PwConSetConditionUserId(PWGM_HCONNECTOR connector, const PWP_UINT32 userId)
Sets the condition data for a connector.
@ PWGM_FACEORDER_VCGROUPSBCLAST
InteriorFirst grouped by VCs then BCs.
PWP_BOOL PwModNdxBoundaryAndCondition(PWGM_HGRIDMODEL model, PWP_UINT32 ndx, PWGM_BNDRYDATA *pBndryData, PWGM_CONDDATA *pCondData)
Get the PWGM_BNDRYDATA and PWGM_CONDDATA for the model's nth structured boundary.
PWP_UINT32(* PWGM_FACESTREAMCB)(PWGM_FACESTREAM_DATA *data)
The face stream callback function signature.
@ PWGM_IJK_J
J-component id.
PWP_BOOL PwBlkSetName(PWGM_HBLOCK block, const char *name)
Set a block's name.
PWP_UINT32 PwModVertexCount(PWGM_HGRIDMODEL model)
Get the number of model vertex elements.
PWP_BOOL PwUnsDomAllocateElementCounts(PWGM_HDOMAIN domain, const PWGM_ELEMCOUNTS &counts)
Allocates element storage in an unstructured domain.
@ PWGM_FACEORDER_BOUNDARYFIRST
all cell faces in boundary, interior order
PWP_BOOL PwVlstSetXYZ3Data(PWGM_HVERTEXLIST vertlist, const PWGM_INDEX3 ndx3, const PWGM_VERTDATA &v)
Set the XYZ of a point in a 3D structured vertex list using a PWGM_VERTDATA value.
PWP_UINT32 PwModDomainCount(PWGM_HGRIDMODEL model)
Get the number of domain elements in the model.
PWP_UINT32 id
grid-defined condition id
An opaque handle to a grid domain element.
PWP_UINT32 tid
cae-defined condition id
PWP_BOOL PwBlock(PWGM_HBLOCK block, PWGM_BLOCKDATA *pBlockData)
Get the block data.
PWP_BOOL PwDomSetConditionUserId(PWGM_HDOMAIN domain, const PWP_UINT32 userId)
Sets the condition data for a domain.
PWGM_HBLOCK PwModCreateStrBlock(PWGM_HGRIDMODEL model, const PWGM_STR_SIZE blkSize)
Creates a structured block in a model.
PWGM_HELEMENT PwBlkEnumElements(PWGM_HBLOCK block, PWP_UINT32 ndx)
Sequentially enumerate the block elements.
PWP_UINT32 PwModEnumElementCount(PWGM_HGRIDMODEL model, PWGM_ELEMCOUNTS *pCounts)
Get the number of enumerated model block elements.
PWP_BOOL PwDomSetConditionTypeId(PWGM_HDOMAIN domain, const PWP_UINT32 typeId)
Sets the condition data for a domain.
@ PWGM_FACEORDER_DONTCARE
all cell faces in any order
PWP_UINT64(* PWGM_INDEXMAPPERCB)(const PWP_UINT64 pwgmNdx, void *data)
The custom, unstructured IndexScheme mapper callback function signature.
const char * name
grid-defined condition name
PWP_BOOL PwBlkSize(PWGM_HBLOCK block, PWGM_STR_SIZE *pSize)
Get the block's vertex-size.
#define PWGM_HDOMAIN_ISVALID(h)
returns non-zero value if handle is valid
PWP_BOOL PwUnsDomAllocateElements(PWGM_HDOMAIN domain, const PWGM_ENUM_ELEMTYPE cellType, const PWP_UINT n)
Allocates element storage in an unstructured domain.
An opaque handle to a grid model.
PWP_BOOL PwBlkNdxBoundary(PWGM_HBLOCK block, PWP_UINT32 ndx, PWGM_BNDRYDATA *pBndryData)
Get the data for the block's nth structured boundary.
ASSERT_COMPILE(sizeof(PWGM_ASSEMBLER_DATA)<=sizeof(PWP_UINT32) *8)
PWP_BOOL PwAsmPushElementFace(PWGM_HBLOCKASSEMBLER blkAsm, const PWGM_ASSEMBLER_DATA *face)
Adds a face to an unstructured block face assembler.
PWP_UINT32(* PWGM_ENDSTREAMCB)(PWGM_ENDSTREAM_DATA *data)
The face stream callback function signature.
@ PWGM_FACEORDER_BCGROUPSONLY_BYVC
BoundariesOnly grouped by VCs.
PWP_VOID PwModDefaultEnumElementOrder(PWGM_HGRIDMODEL model)
Reset the enumElements() ordering sequence to the default (none).
PWP_BOOL PwBndryCondition(PWGM_HBNDRY boundary, PWGM_CONDDATA *pCondData)
Get the boundary's condition data.
PWP_BOOL PwAsmSetConditionTypeName(PWGM_HBLOCKASSEMBLER h, const PWGM_CONDKEY key, const char *typeName)
Sets the type name of the condition identified by key.
PWP_BOOL PwConSetName(PWGM_HCONNECTOR connector, const char *name)
Set a connector's name.
An opaque handle to a structured, inter-block connection.
PWP_BOOL PwModGetAttributeUINT32(PWGM_HGRIDMODEL model, const char *name, PWP_UINT32 *val)
PWP_BOOL PwModGetAttributeFLOAT(PWGM_HGRIDMODEL model, const char *name, PWP_FLOAT *val)
#define PWGM_HBLOCK_ISVALID(h)
Returns non-zero value if handle is valid.
PWP_BOOL PwAsmFinalize(PWGM_HBLOCKASSEMBLER blkAsm)
Stitches together all the faces added to the assembler into cells and blocks.
PWP_BOOL PwXform3to2(const PWGM_INDEX_XFORM *pX3, PWGM_INDEX_XFORM2 *pX2)
Convert a 3D transform matrix to it's 2D equivalent.
PWP_UINT32 PWGM_CONDKEY
The condition key integral type.
PWP_BOOL PwDomSetConditionUserName(PWGM_HDOMAIN domain, const char *userName)
Sets the condition name for a domain.
const char * type
cae-defined condition physical type name
static PWP_UINT32 endCB(PWGM_ENDSTREAM_DATA *data)
PWGM_HCNXN PwModEnumConnections(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model's connections.
Pointwise Grid Model API Specification (PWGM-API)
Element descriptor data type.
PWGM_ENUM_ELEMORDER
Types of element orderings.
PWP_UINT32 PwBlkElementCount(PWGM_HBLOCK block, PWGM_ELEMCOUNTS *pCounts)
Get the number of block elements.
@ PWGM_IJK_K
K-component id.
PWP_INT32 i
i-coordinate used for 3D and 2D grids
@ PWGM_ELEMTYPE_TRI
2D, 3-sided grid element
#define PWGM_HVERTEX_ISVALID(h)
returns non-zero value if handle is valid
Structured grid ijk index data type.
PWP_BOOL PwElemDataMod(PWGM_HELEMENT element, PWGM_ELEMDATA *pElemData)
Get the element data relative to the model's index space.
PWGM_HELEMENT PwDomEnumElements(PWGM_HDOMAIN domain, PWP_UINT32 ndx)
Sequentially enumerate the domain elements.
#define PWGM_ECNT_Tri(ecs)
Extract the Tri count from a PWGM_ELEMCOUNTS struct.
PWP_BOOL PwBlkNdxConnection(PWGM_HBLOCK block, PWP_UINT32 ndx, PWGM_CNXNDATA *pCnxnData)
Get the data for the block's nth connection.
@ PWGM_ELEMTYPE_POINT
0D, point grid element
@ PWGM_ELEMTYPE_PYRAMID
3D, 5-sided, quad-based grid element
#define PWGM_ECNT_Tet(ecs)
Extract the Tet count from a PWGM_ELEMCOUNTS struct.
PWP_BOOL PwUnsBlkSetElement(PWGM_HBLOCK block, const PWP_UINT ndx, const PWGM_ELEMDATA *eData)
Sets the connectivity for an unstructured block element.
PWP_UINT32 PwModBlockCount(PWGM_HGRIDMODEL model)
Get the number of block elements in the model.
@ PWGM_FACEORDER_INTERIORFIRST
all cell faces in interior, boundary order
PWP_BOOL PwModCustomIndex3SchemeReady(PWGM_HGRIDMODEL model, PWGM_INDEX3MAPPERCB cb, void *data)
Notifys the Pointwise export framework that the custom, structured index3 map is ready.
@ PWP_VALTYPE_REAL
transfer value is a PWP_REAL
PWP_BOOL PwBlkSetConditionUserId(PWGM_HBLOCK block, const PWP_UINT32 userId)
Sets the condition data for a grid entity.
PWGM_INDEX3(* PWGM_INDEX3MAPPERCB)(const PWGM_INDEX3 pwgmNdx, void *data)
The custom, structured Index3Scheme mapper callback function signature.
@ PWGM_ELEMTYPE_BAR
1D, linear grid element
PWP_BOOL PwAsmSetConditionTypeId(PWGM_HBLOCKASSEMBLER h, const PWGM_CONDKEY key, const PWP_UINT32 typeId)
Sets the type id of the condition identified by key.
PWP_BOOL PwBlkCondition(PWGM_HBLOCK block, PWGM_CONDDATA *pCondData)
Get the block condition data.
PWP_BOOL PwInRange(PWGM_INDEX3 ijk, const PWGM_STR_RANGE *pRange)
Determines if an PWGM_INDEX3 is within a PWGM_STR_RANGE.
PWP_UINT32(* PWGM_BEGINSTREAMCB)(PWGM_BEGINSTREAM_DATA *data)
The begin stream callback function signature.
PWP_BOOL PwDomCondition(PWGM_HDOMAIN domain, PWGM_CONDDATA *pCondData)
Get the domain condition data.
Structured grid ijk index data type.
#define PWGM_ECNT_Quad(ecs)
Extract the Quad count from a PWGM_ELEMCOUNTS struct.
PWGM_HCNXN PwBlkEnumConnections(PWGM_HBLOCK block, PWP_UINT32 ndx)
Sequentially enumerate the block's connections.
PWP_BOOL PwVlstSetXYZData(PWGM_HVERTEXLIST vertlist, const PWP_UINT ndx, const PWGM_VERTDATA &v)
Set the XYZ of a point in a 1D vertex list using a PWGM_VERTDATA value.
PWGM_HBNDRY PwModEnumBoundaries(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model's boundaries.
PWGM_HDOMAIN PwModCreateStrDomain(PWGM_HGRIDMODEL model, const PWGM_STR_SIZE domSize)
Creates a structured domain in a model.
PWGM_ENUM_ELEMTYPE
Element type ids.
PWP_BOOL PwAsmSetConditionUserId(PWGM_HBLOCKASSEMBLER h, const PWGM_CONDKEY key, const PWP_UINT32 userId)
Sets the user id of the condition identified by key.
PWP_BOOL PwVlstSetXYZ(PWGM_HVERTEXLIST vertlist, const PWP_UINT ndx, const PWGM_XYZVAL x, const PWGM_XYZVAL y, const PWGM_XYZVAL z)
Set the XYZ of a point in a 1D vertex list.
Vertex descriptor data type.
@ PWGM_FACEORDER_BCGROUPSFIRST
BoundaryFirst grouped by BCs.
#define PWGM_ECNT_Wedge(ecs)
Extract the Wedge count from a PWGM_ELEMCOUNTS struct.
PWGM_HBNDRY PwBlkEnumBoundaries(PWGM_HBLOCK block, PWP_UINT32 ndx)
Sequentially enumerate the block's boundaries.
PWP_BOOL PwAsmSetCellSpanConditionKey(PWGM_HBLOCKASSEMBLER blkAsm, const PWGM_CONDKEY key, const PWP_UINT32 startCell, const PWP_UINT32 endCell)
Tags a contiguous span of cells with the condition identified by key.
PWP_INT32 j
j-coordinate used for 2D grids
PWGM_INDEX3 PwXformApply(const PWGM_INDEX_XFORM *pX3, PWGM_INDEX3 ijk)
Apply a PWGM_INDEX_XFORM transform to a PWGM_INDEX3 value.
@ PWGM_FACEORDER_BCGROUPSLAST
InteriorFirst grouped by BCs.
PWP_BOOL PwVlstReadFile(PWGM_HVERTEXLIST vertlist, FILE *file, const PWGM_XYZ_CLUSTERING fileClustering, const PWP_ENDIANNESS fileByteOrder, const PWP_ENUM_PRECISION filePrecision)
An opaque handle to a grid block element.
PWGM_INDEX3 end
ending index
PWP_BOOL PwModGetAttributeREAL(PWGM_HGRIDMODEL model, const char *name, PWP_REAL *val)
Element count information.
PWP_BOOL PwVlstIsStructured(PWGM_HVERTEXLIST vertlist)
Check the type of a vertex list.
PWP_BOOL PwModGetAttributeValue(PWGM_HGRIDMODEL model, const char *name, PWP_ENUM_VALTYPE bufType, void *buf, PWP_UINT count)
Get an attribute's value.
PWP_BOOL PwModGetAttributeBOOL(PWGM_HGRIDMODEL model, const char *name, PWP_BOOL *val)
@ PWGM_ELEMTYPE_WEDGE
3D, extruded, tri/quad grid element
PWP_UINT32 PwModConnectionCount(PWGM_HGRIDMODEL model)
Get the number of structured grid connections in the model.
PWP_UINT32 PwModBoundaryCount(PWGM_HGRIDMODEL model)
Get the number of structured grid boundaries in the model.
PWP_BOOL PwAsmSetProperty(PWGM_HBLOCKASSEMBLER blkAsm, const PWP_UINT32 propertySetId, const char *key, const char *val)
Sets the text value of a property identified by key.
PWP_INT32 k
k-coordinate used for 3D grids only
PWP_BOOL PwVlstSetXYZVal3(PWGM_HVERTEXLIST vertlist, const PWGM_INDEX3 ndx3, const PWGM_ENUM_XYZ which, const PWGM_XYZVAL val)
Set an XYZ component of a point in a 3D structured vertex list.
PWP_BOOL PwVertXyzVal(PWGM_HVERTEX vertex, PWGM_ENUM_XYZ which, PWGM_XYZVAL *pVal)
Get a vertex's x, y, or z component value.
Structured grid boundary data type.
@ PWGM_FACEORDER_BOUNDARYONLY
only boundary cell faces
PWP_BOOL PwVlstSetXYZVal(PWGM_HVERTEXLIST vertlist, const PWP_UINT ndx, const PWGM_ENUM_XYZ which, const PWGM_XYZVAL val)
Set an XYZ component of a point in a 1D vertex list.
PWP_BOOL PwBlkSetConditionUserName(PWGM_HBLOCK block, const char *userName)
Sets the condition name for a grid entity.
#define PWGM_ECNT_Pyramid(ecs)
Extract the Pyramid count from a PWGM_ELEMCOUNTS struct.
PWGM_HVERTEXLIST PwBlkGetVertexList(PWGM_HBLOCK block)
Get the vertex list associated with an unstructured or structured block.
PWGM_HBLOCKASSEMBLER PwVlstCreateBlockAssembler(PWGM_HVERTEXLIST vertlist)
Creates an unstructured block face assembler that uses vertices from an unstructured vertex list.
PWGM_INDEX3 beg
begining index
PWP_UINT32 PwBlkConnectionCount(PWGM_HBLOCK block)
Get the number of connections in the block.
PWP_BOOL PwBlkSetConditionTypeId(PWGM_HBLOCK block, const PWP_UINT32 typeId)
Sets the condition data for a grid entity.
PWP_ENDIANNESS
Flags used to indicate endianness or control endian behaviors in functions.
PWP_BOOL PwModGetAttributeINT(PWGM_HGRIDMODEL model, const char *name, PWP_INT *val)
PWGM_HVERTEXLIST PwModCreateUnsVertexList3(PWGM_HGRIDMODEL model)
Creates an empty, unstructured vertex list in a model for 3-D blocks and 2-D domains.
PWP_INT32 i
i-coordinate used for 2D grids
PWGM_HVERTEXLIST PwConGetVertexList(PWGM_HCONNECTOR connector)
Get the vertex list associated with a connector.
@ PWP_VALTYPE_BOOL
transfer value is a PWP_BOOL
PWGM_HELEMENT PwModEnumElements(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model's block elements.
@ PWP_VALTYPE_INT
transfer value is a PWP_INT
PWP_BOOL PwModGetAttributeINT32(PWGM_HGRIDMODEL model, const char *name, PWP_INT32 *val)
PWP_BOOL PwVlstAllocate(PWGM_HVERTEXLIST vertlist, const PWP_UINT n)
Allocates storage in an unstructured vertex list.
PWP_BOOL PwVertDataMod(PWGM_HVERTEX vertex, PWGM_VERTDATA *pVertData)
Get the vertex data relative to the model's index space.
PWP_BOOL PwUnsBlkAllocateElementCounts(PWGM_HBLOCK block, const PWGM_ELEMCOUNTS &counts)
Allocates element storage in an unstructured block.
PWP_BOOL PwConSetConditionUserName(PWGM_HCONNECTOR connector, const char *userName)
Sets the condition name for a connector.
PWP_BOOL PwModNdxConnection(PWGM_HGRIDMODEL model, PWP_UINT32 ndx, PWGM_CNXNDATA *pCnxnData)
Get the data for the model's nth connection.
PWP_BOOL PwXform2to3(const PWGM_INDEX_XFORM2 *pX2, PWGM_INDEX_XFORM *pX3)
Convert a 2D transform matrix to it's 3D equivalent.
Condition descriptor data type.
PWP_BOOL PwBlkSetConditionTypeName(PWGM_HBLOCK block, const char *typeName)
Sets the condition data for a grid entity.
An opaque handle to a structured block boundary.
PWP_BOOL PwDomSetCondition(PWGM_HDOMAIN domain, const PWGM_CONDDATA &condData)
Sets the condition data for a domain.
PWGM_ENUM_IJK PwXformFollows(const PWGM_INDEX_XFORM *pX3, PWGM_ENUM_IJK localAxis, PWP_BOOL *pFlipped)
For a given localAxis, determine the corresponding axis in the transformed system.
PWGM_INDEX3 PW_DLL_IMPEXP PWGM_STR_SIZE
Structured grid ijk size data type.
PWP_BOOL PwBlkSetCondition(PWGM_HBLOCK block, const PWGM_CONDDATA &condData)
Sets the condition data for a grid entity.
PWGM_HBLOCK PwModEnumBlocks(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model block elements.
PWGM_HDOMAIN PwVlstCreateUnsDomain(PWGM_HVERTEXLIST vertlist)
Creates an unstructured domain that uses vertices from an unstructured vertex list.
PWP_REAL PWGM_XYZVAL
XYZ component data type.
PWP_BOOL PwConSetCondition(PWGM_HCONNECTOR connector, const PWGM_CONDDATA &condData)
Sets the condition data for a connector.
PWP_UINT32 PwBlkBoundaryCount(PWGM_HBLOCK block)
Get the number of boundaries in the block.
PWP_BOOL PwUnsDomSetElement(PWGM_HDOMAIN domain, const PWP_UINT ndx, const PWGM_ELEMDATA *eData)
Sets the connectivity for an unstructured domain element.
PWP_BOOL PwModGetAttributeString(PWGM_HGRIDMODEL model, const char *name, const char **val)
Get an attribute value as a specific type.
PWP_BOOL PwDomSetConditionTypeName(PWGM_HDOMAIN domain, const char *typeName)
Sets the condition data for a domain.
@ PWGM_IJK_I
I-component id.
PWP_BOOL PwModStreamFaces(PWGM_HGRIDMODEL model, PWGM_ENUM_FACEORDER order, PWGM_BEGINSTREAMCB beginCB, PWGM_FACESTREAMCB faceCB, PWGM_ENDSTREAMCB endCB, void *userData)
Stream the grid model's faces to a callback function in the specified order.
PWP_BOOL PwConSetConditionTypeId(PWGM_HCONNECTOR connector, const PWP_UINT32 typeId)
Sets the condition data for a connector.
@ PWGM_FACEORDER_INTERIORONLY
only interior cell faces
PWP_BOOL PwVlstSetXYZ3(PWGM_HVERTEXLIST vertlist, const PWGM_INDEX3 ndx3, const PWGM_XYZVAL x, const PWGM_XYZVAL y, const PWGM_XYZVAL z)
Set the XYZ of a point in a 3D structured vertex list.
PWP_BOOL PwConSetProperty(PWGM_HCONNECTOR connector, const char *key, const char *val)
Sets the text value of a property identified by key.
@ PWP_VALTYPE_ENUM
transfer value is a const char*
Structured grid, inter-block, connection data type.
An opaque handle to a grid vertex element.
Data and functions useful to PWP-API compliant plugins.
PWP_BOOL PwModAppendEnumElementOrder(PWGM_HGRIDMODEL model, PWGM_ENUM_ELEMORDER order)
Append an element order to the enumElements() ordering sequence.
PWP_BOOL PwConnection(PWGM_HCNXN connection, PWGM_CNXNDATA *pCnxnData)
Get the connection data.
PWP_BOOL PwDomSetName(PWGM_HDOMAIN domain, const char *name)
Set a domain's name.
PWP_BOOL PwConSetConditionTypeName(PWGM_HCONNECTOR connector, const char *typeName)
Sets the condition data for a connector.
PWGM_HVERTEXLIST PwModCreateUnsVertexList(PWGM_HGRIDMODEL model, const PWP_ENUM_DIMENSION blkElemDimty)
Creates an empty, unstructured vertex list in a model.
PWP_UINT PwVlstGetIndexDimensionality(PWGM_HVERTEXLIST vertlist)
Get the index dimensionality of a vertex list.
PWGM_HVERTEXLIST PwDomGetVertexList(PWGM_HDOMAIN domain)
Get the vertex list associated with an unstructured or structured domain.
PWP_BOOL PwBlkSetProperty(PWGM_HBLOCK block, const char *key, const char *val)
Sets the text value of a property identified by key.
PWP_BOOL PwBoundary(PWGM_HBNDRY boundary, PWGM_BNDRYDATA *pBndryData)
Get the boundary data.
An opaque handle to a grid connector element.
PWP_ENUM_DIMENSION
Supported dimensionality values.
#define PWGM_ECNT_Hex(ecs)
Extract the Hex count from a PWGM_ELEMCOUNTS struct.
@ PWP_VALTYPE_UINT
transfer value is a PWP_UINT
Face descriptor data type. Used for face assembler functions.
PWGM_ENUM_IJK
IJK component type ids.
PWP_BOOL PwBlkNdxBoundaryAndCondition(PWGM_HBLOCK block, PWP_UINT32 ndx, PWGM_BNDRYDATA *pBndryData, PWGM_CONDDATA *pCondData)
Get the PWGM_BNDRYDATA and PWGM_CONDDATA for the block's nth structured boundary.
PWP_BOOL PwAsmSetCondition(PWGM_HBLOCKASSEMBLER h, const PWGM_CONDKEY key, const PWGM_CONDDATA &condData)
Sets the condition data of the condition identified by key.
static PWP_UINT32 beginCB(PWGM_BEGINSTREAM_DATA *data)
PWGM_ENUM_XYZ
XYZ component type ids.
PWP_BOOL PwAsmSetConditionUserName(PWGM_HBLOCKASSEMBLER h, const PWGM_CONDKEY key, const char *userName)
Sets the user name of the condition identified by key.
PWGM_HVERTEXLIST PwAsmGetVertexList(PWGM_HBLOCKASSEMBLER blkAsm)
Get the vertex list associated with an unstructured block assembler.
PWGM_ENUM_FACEORDER
The orderings supported by face streaming.
PWP_BOOL PwDomSetProperty(PWGM_HDOMAIN domain, const char *key, const char *val)
Sets the text value of a property identified by key.
PWP_BOOL PwModCustomIndexSchemeReady(PWGM_HGRIDMODEL model, PWGM_INDEXMAPPERCB cb, void *data)
Notifys the Pointwise export framework that the custom, unstructured index map is ready.
PWGM_INDEX3 PwXform2Apply(const PWGM_INDEX_XFORM2 *pX2, PWGM_INDEX3 ijk)
Apply a PWGM_INDEX_XFORM2 transform to a PWGM_INDEX3 value.
Enumerated model element descriptor data type.
PWGM_HCONNECTOR PwModCreateCon(PWGM_HGRIDMODEL model, PWP_UINT size)
Creates a connector in a model.
PWP_ENUM_PRECISION
File precision values.
Structured grid ijk range data type.
PWP_BOOL PwUnsBlkAllocateElements(PWGM_HBLOCK block, const PWGM_ENUM_ELEMTYPE cellType, const PWP_UINT count)
Allocates element storage in an unstructured block.
PWP_BOOL PwVlstIsUnstructured(PWGM_HVERTEXLIST vertlist)
Check the type of a vertex list.
PWP_ENUM_DIMENSION PwVlstGetBlkElemDimensionality(PWGM_HVERTEXLIST vertlist)
Get the block element dimensionality of a vertex list.
Grid vertex list handle declaration.
const char * PwElemTypeToText(PWGM_ENUM_ELEMTYPE type)
Maps a PWGM_ENUM_ELEMTYPE value to a human readable string.
PWP_BOOL PwModGetAttributeUINT(PWGM_HGRIDMODEL model, const char *name, PWP_UINT *val)
#define PWGM_HELEMENT_ISVALID(h)
returns non-zero value if handle is valid
@ PWGM_ELEMTYPE_QUAD
2D, 4-sided grid element
@ PWGM_ELEMTYPE_HEX
3D, 6-sided (block) grid element
PWP_BOOL PwModGetAttributeEnum(PWGM_HGRIDMODEL model, const char *name, const char **val)
PWP_BOOL PwBlkSetExportName(PWGM_HBLOCK block, const char *name)
Set the name used to identify the block or group of blocks in the exported grid.