Go to the documentation of this file. 1 #ifndef _APIGRIDMODEL_H_
2 #define _APIGRIDMODEL_H_
17 #if defined(WINDOWS) && defined(SHOW_PWGM_MESSAGES)
18 # if !defined(PWGM_HIDE_EXPORT_API)
20 # define PWGM_HIDE_IMPORT_API
21 # if !defined(PWGM_HIDE_UNSTRUCTURED_API) && defined(PWGM_HIDE_STRUCTURED_API)
22 # pragma message ("FYI: Using Unstructured Export PWGM API")
23 # elif defined(PWGM_HIDE_UNSTRUCTURED_API) && !defined(PWGM_HIDE_STRUCTURED_API)
24 # pragma message ("FYI: Using Structured Export PWGM API")
25 # elif !defined(PWGM_HIDE_UNSTRUCTURED_API) && !defined(PWGM_HIDE_STRUCTURED_API)
26 # pragma message ("WARNING: Using Hybrid Export PWGM API")
27 # else //defined(PWGM_HIDE_UNSTRUCTURED_API) && defined(PWGM_HIDE_STRUCTURED_API)
28 # error ("ERROR: Export PWGM API is INVISIBLE!")
31 # else // !defined(PWGM_HIDE_EXPORT_API)
33 # pragma message ("FYI: Using Import PWGM API")
35 # endif // !defined(PWGM_HIDE_EXPORT_API)
36 #endif // WINDOWS && SHOW_PWP_MESSAGES
60 # define PW_DLL_IMPEXP PW_DLLEXPORT
62 # define PW_DLL_IMPEXP PW_DLLIMPORT
328 #define PWGM_HGRIDMODEL_ISVALID(h) PWP_HANDLE_ISVALID(h)
332 #define PWGM_HGRIDMODEL_INIT PWP_HANDLE_INIT
334 #define PWGM_HGRIDMODEL_SET(h, v) PWP_HANDLE_SET(h, v)
336 #define PWGM_HGRIDMODEL_SET_INVALID(h) PWGM_HGRIDMODEL_SET(h, PWP_HANDLE_INIT)
338 #define PWGM_HGRIDMODEL_OUT_GMIMPL(h) ((PWGM_HGRIDMODEL_OUT_IMPL*)h)
340 #define PWGM_HGRIDMODEL_IN_GMIMPL(h) ((PWGM_HGRIDMODEL_IN_IMPL*)h)
348 #define PWGM_HBLOCK_ISVALID(h) PWP_HEGRP_ISVALID(h)
352 #define PWGM_HBLOCK_INIT PWP_HEGRP_INIT
354 #define PWGM_HBLOCK_SET(h, p, v) PWP_HEGRP_SET(h, p, v)
356 #define PWGM_HBLOCK_SET_INVALID(h) PWGM_HBLOCK_SET(h, 0, PWP_BADID)
358 #define PWGM_HBLOCK_OUT_GMIMPL(h) ((PWGM_HGRIDMODEL_OUT_IMPL*)PWP_HEGRP_H(h))
360 #define PWGM_HBLOCK_IN_GMIMPL(h) ((PWGM_HGRIDMODEL_IN_IMPL*)PWP_HEGRP_H(h))
364 #define PWGM_HBLOCK_H(h) PWP_HEGRP_H(h)
366 #define PWGM_HBLOCK_ID(h) PWP_HEGRP_ID(h)
368 #define PWGM_HBLOCK_MODEL(h) PWP_HEGRP_H(h)
374 #define PWGM_HDOMAIN_ISVALID(h) PWP_HEGRP_ISVALID(h)
378 #define PWGM_HDOMAIN_INIT PWP_HEGRP_INIT
380 #define PWGM_HDOMAIN_SET(h, p, v) PWP_HEGRP_SET(h, p, v)
382 #define PWGM_HDOMAIN_SET_INVALID(h) PWGM_HDOMAIN_SET(h, 0, PWP_BADID)
384 #define PWGM_HDOMAIN_OUT_GMIMPL(h) ((PWGM_HGRIDMODEL_OUT_IMPL*)PWP_HEGRP_H(h))
386 #define PWGM_HDOMAIN_IN_GMIMPL(h) ((PWGM_HGRIDMODEL_IN_IMPL*)PWP_HEGRP_H(h))
390 #define PWGM_HDOMAIN_H(h) PWP_HEGRP_H(h)
392 #define PWGM_HDOMAIN_ID(h) PWP_HEGRP_ID(h)
394 #define PWGM_HDOMAIN_MODEL(h) PWP_HEGRP_H(h)
400 #define PWGM_HVERTEX_ISVALID(h) PWP_HEGRP_ISVALID(h)
404 #define PWGM_HVERTEX_INIT PWP_HEGRP_INIT
406 #define PWGM_HVERTEX_SET(h, p, v) PWP_HEGRP_SET(h, p, v)
408 #define PWGM_HVERTEX_SET_INVALID(h) PWGM_HVERTEX_SET(h, 0, PWP_BADID)
410 #define PWGM_HVERTEX_OUT_GMIMPL(h) ((PWGM_HGRIDMODEL_OUT_IMPL*)PWP_HEGRP_H(h))
414 #define PWGM_HVERTEX_H(h) PWP_HEGRP_H(h)
416 #define PWGM_HVERTEX_ID(h) PWP_HEGRP_ID(h)
418 #define PWGM_HVERTEX_MODEL(h) PWP_HEGRP_H(h)
429 #define PWGM_HELEMENT_ISVALID(h) PWP_HEGI_ISVALID(h)
433 #define PWGM_HELEMENT_INIT PWP_HEGI_INIT
435 #define PWGM_HELEMENT_SET(h,p,tt,sv,v) PWP_HEGI_SET(h,p,tt,sv,v)
437 #define PWGM_HELEMENT_SET_INVALID(h) PWGM_HELEMENT_SET(h, 0, PWP_BADTYPE, \
438 PWP_BADID, PWP_BADID)
440 #define PWGM_HELEMENT_OUT_GMIMPL(h) ((PWGM_HGRIDMODEL_OUT_IMPL*)PWGM_HELEMENT_MODEL(h))
444 #define PWGM_HELEMENT_H(h) PWP_HEGI_H(h)
446 #define PWGM_HELEMENT_PID(h) PWP_HEGI_PID(h)
448 #define PWGM_HELEMENT_PTYPE(h) PWP_HEGI_PTYPE(h)
450 #define PWGM_HELEMENT_ID(h) PWP_HEGI_ID(h)
452 #define PWGM_HELEMENT_MODEL(h) PWP_HEGI_H(h)
459 #define PWGM_HBNDRY_ISVALID(h) PWP_HEGRP_ISVALID(h)
463 # define PWGM_HBNDRY_INIT PWP_HEGRP_INIT
465 # define PWGM_HBNDRY_SET(h, p, v) PWP_HEGRP_SET(h, p, v)
467 # define PWGM_HBNDRY_SET_INVALID(h) PWGM_HBNDRY_SET(h, 0, PWP_BADID)
469 #define PWGM_HBNDRY_OUT_GMIMPL(h) ((PWGM_HGRIDMODEL_OUT_IMPL*)PWP_HEGRP_H(h))
473 #define PWGM_HBNDRY_H(h) PWP_HEGRP_H(h)
475 #define PWGM_HBNDRY_ID(h) PWP_HEGRP_ID(h)
477 #define PWGM_HBNDRY_MODEL(h) PWP_HEGRP_H(h)
484 #define PWGM_HCNXN_ISVALID(h) PWP_HEGRP_ISVALID(h)
488 # define PWGM_HCNXN_INIT PWP_HEGRP_INIT
490 # define PWGM_HCNXN_SET(h, p, v) PWP_HEGRP_SET(h, p, v)
492 # define PWGM_HCNXN_SET_INVALID(h) PWGM_HCNXN_SET(h, 0, PWP_BADID)
494 #define PWGM_HCNXN_OUT_GMIMPL(h) ((PWGM_HGRIDMODEL_OUT_IMPL*)PWP_HEGRP_H(h))
498 #define PWGM_HCNXN_H(h) PWP_HEGRP_H(h)
500 #define PWGM_HCNXN_ID(h) PWP_HEGRP_ID(h)
502 #define PWGM_HCNXN_MODEL(h) PWP_HEGRP_H(h)
509 #define PWGM_HCONNECTOR_ISVALID(h) PWP_HEGRP_ISVALID(h)
513 #define PWGM_HCONNECTOR_INIT PWP_HEGRP_INIT
514 #define PWGM_HCONNECTOR_SET(h, p, v) PWP_HEGRP_SET(h, p, v)
516 #define PWGM_HCONNECTOR_SET_INVALID(h) PWGM_HCONNECTOR_SET(h, 0, PWP_BADID)
518 #define PWGM_HCONNECTOR_IN_GMIMPL(h) ((PWGM_HGRIDMODEL_IN_IMPL*)PWP_HEGRP_H(h))
523 #define PWGM_HCONNECTOR_H(h) PWP_HEGRP_H(h)
524 #define PWGM_HCONNECTOR_ID(h) PWP_HEGRP_ID(h)
526 #define PWGM_HCONNECTOR_MODEL(h) PWP_HEGRP_H(h)
538 #define PWGM_HVERTEXLIST_ISVALID(h) PWP_HEGI_ISVALID(h)
542 #define PWGM_HVERTEXLIST_INIT PWP_HEGI_INIT
544 #define PWGM_HVERTEXLIST_SET(h,p,tt,sv,v) PWP_HEGI_SET(h,p,tt,sv,v)
546 #define PWGM_HVERTEXLIST_SET_INVALID(h) PWGM_HVERTEXLIST_SET(h, 0, \
547 PWP_BADTYPE, PWP_BADID, PWP_BADID)
549 #define PWGM_HVERTEXLIST_IN_GMIMPL(h) ((PWGM_HGRIDMODEL_IN_IMPL*)PWGM_HVERTEXLIST_MODEL(h))
553 #define PWGM_HVERTEXLIST_H(h) PWP_HEGI_H(h)
555 #define PWGM_HVERTEXLIST_PID(h) PWP_HEGI_PID(h)
557 #define PWGM_HVERTEXLIST_PTYPE(h) PWP_HEGI_PTYPE(h)
559 #define PWGM_HVERTEXLIST_ID(h) PWP_HEGI_ID(h)
561 #define PWGM_HVERTEXLIST_MODEL(h) PWP_HEGI_H(h)
568 #define PWGM_HBLOCKASSEMBLER_ISVALID(h) PWP_HEGRP_ISVALID(h)
572 #define PWGM_HBLOCKASSEMBLER_INIT PWP_HEGRP_INIT
573 #define PWGM_HBLOCKASSEMBLER_SET(h, p, v) PWP_HEGRP_SET(h, p, v)
575 #define PWGM_HBLOCKASSEMBLER_SET_INVALID(h) PWGM_HBLOCKASSEMBLER_SET(h, 0, PWP_BADID)
577 #define PWGM_HBLOCKASSEMBLER_IN_GMIMPL(h) ((PWGM_HGRIDMODEL_IN_IMPL*)PWP_HEGRP_H(h))
582 #define PWGM_HBLOCKASSEMBLER_H(h) PWP_HEGRP_H(h)
583 #define PWGM_HBLOCKASSEMBLER_ID(h) PWP_HEGRP_ID(h)
585 #define PWGM_HBLOCKASSEMBLER_MODEL(h) PWP_HEGRP_H(h)
621 enum PWGM_XYZ_CLUSTERING {
622 PWGM_CLUSTERING_XYXY,
623 PWGM_CLUSTERING_XXYY,
624 PWGM_CLUSTERING_XYZXYZ,
625 PWGM_CLUSTERING_XXYYZZ,
630 PWGM_CLUSTERING_SIZE,
631 PWGM_CLUSTERING_LAST = PWGM_CLUSTERING_SIZE - 1
655 #define PWGM_UNSPECIFIED_COND_ID PWP_UINT32(2147483647)
661 #define PWGM_UNSPECIFIED_TYPE_ID PWP_UINT32(0)
687 PWGM_ELEMTYPE_LAST = PWGM_ELEMTYPE_SIZE-1
718 PWGM_ELEMORDER_LAST = PWGM_ELEMORDER_SIZE-1
728 #define PWGM_ELEMDATA_VERT_SIZE 8
771 #define PWGM_ECNT_Point(ecs) (ecs).count[PWGM_ELEMTYPE_POINT]
777 #define PWGM_ECNT_Bar(ecs) (ecs).count[PWGM_ELEMTYPE_BAR]
783 #define PWGM_ECNT_Hex(ecs) (ecs).count[PWGM_ELEMTYPE_HEX]
789 #define PWGM_ECNT_Quad(ecs) (ecs).count[PWGM_ELEMTYPE_QUAD]
795 #define PWGM_ECNT_Tri(ecs) (ecs).count[PWGM_ELEMTYPE_TRI]
801 #define PWGM_ECNT_Tet(ecs) (ecs).count[PWGM_ELEMTYPE_TET]
807 #define PWGM_ECNT_Wedge(ecs) (ecs).count[PWGM_ELEMTYPE_WEDGE]
813 #define PWGM_ECNT_Pyramid(ecs) (ecs).count[PWGM_ELEMTYPE_PYRAMID]
831 PWGM_XYZ_LAST = PWGM_XYZ_SIZE-1
851 PWGM_GRIDTYPE_LAST = PWGM_GRIDTYPE_SIZE-1
924 PWGM_FACE_LAST = PWGM_FACE_SIZE-1
943 PWGM_CNXNTYPE_LAST = PWGM_FACE_SIZE-1
996 PWGM_IJK_LAST = PWGM_IJK_SIZE-1
1022 PWGM_FACETYPE_LAST = PWGM_FACETYPE_SIZE-1
1046 PWGM_FACEORDER_SIZE,
1047 PWGM_FACEORDER_LAST = PWGM_FACEORDER_SIZE-1
1163 #define PWGM_CONDKEY_UNDEF PWP_UINT32_UNDEF
1500 #if !defined(PWGM_HIDE_UNSTRUCTURED_API) && !defined(PWGM_HIDE_EXPORT_API)
2003 #endif // !defined(PWGM_HIDE_UNSTRUCTURED_API) && !defined(PWGM_HIDE_EXPORT_API)
2012 #if !defined(PWGM_HIDE_STRUCTURED_API) && !defined(PWGM_HIDE_EXPORT_API)
2538 #endif // !defined(PWGM_HIDE_STRUCTURED_API) && !defined(PWGM_HIDE_EXPORT_API)
2554 #if !defined(PWGM_HIDE_IMPORT_API)
3123 const char *key,
const char *val);
3765 const PWGM_XYZ_CLUSTERING fileClustering,
4286 #endif // !defined(PWGM_HIDE_IMPORT_API)
4314 PwBlkSetExportName_t(
PWGM_HBLOCK block,
const char *name);
4468 PwNOTIMPLEMENTED_t();
4515 const PWGM_XYZ_CLUSTERING fileClustering,
4519 PwBlkSetProperty_t(
PWGM_HBLOCK h,
const char *key,
const char *val);
4522 PwDomSetProperty_t(
PWGM_HDOMAIN h,
const char *key,
const char *val);
4525 PwConSetProperty_t(
PWGM_HCONNECTOR h,
const char *key,
const char *val);
4529 const char *key,
const char *val);
4601 struct PW_DLL_IMPEXP PWGM_HGRIDMODEL_OUT_IMPL {
4602 PwModBlockCount_t * PwModBlockCountCB;
4603 PwModDomainCount_t * PwModDomainCountCB;
4604 PwModEnumBlocks_t * PwModEnumBlocksCB;
4605 PwModEnumDomains_t * PwModEnumDomainsCB;
4606 PwModEnumVertices_t * PwModEnumVerticesCB;
4607 PwModVertexCount_t * PwModVertexCountCB;
4608 PwModCustomIndexSchemeReady_t * PwModCustomIndexSchemeReadyCB;
4610 PwBlkElementCount_t * PwBlkElementCountCB;
4611 PwBlkEnumElements_t * PwBlkEnumElementsCB;
4612 PwNOTIMPLEMENTED_t * PwBlkEnumVerticesCB;
4613 PwNOTIMPLEMENTED_t * PwBlkVertexCountCB;
4614 PwBlkCondition_t * PwBlkConditionCB;
4615 PwBlock_t * PwBlockCB;
4616 PwBlkSetExportName_t * PwBlkSetExportNameCB;
4618 PwDomElementCount_t * PwDomElementCountCB;
4619 PwDomEnumElements_t * PwDomEnumElementsCB;
4620 PwNOTIMPLEMENTED_t * PwDomEnumVerticesCB;
4621 PwNOTIMPLEMENTED_t * PwDomVertexCountCB;
4622 PwDomCondition_t * PwDomConditionCB;
4624 PwVertDataMod_t * PwVertDataModCB;
4625 PwNOTIMPLEMENTED_t * PwVertDataBlkCB;
4626 PwNOTIMPLEMENTED_t * PwVertDataDomCB;
4627 PwVertIndexMod_t * PwVertIndexModCB;
4628 PwNOTIMPLEMENTED_t * PwVertIndexBlkCB;
4629 PwNOTIMPLEMENTED_t * PwVertIndexDomCB;
4630 PwVertXyzVal_t * PwVertXyzValCB;
4632 PwElemDataMod_t * PwElemDataModCB;
4633 PwNOTIMPLEMENTED_t * PwElemDataBlkCB;
4634 PwNOTIMPLEMENTED_t * PwElemDataDomCB;
4640 PwModBoundaryCount_t * PwModBoundaryCountCB;
4641 PwModEnumBoundaries_t * PwModEnumBoundariesCB;
4642 PwModConnectionCount_t * PwModConnectionCountCB;
4643 PwModEnumConnections_t * PwModEnumConnectionsCB;
4644 PwModNdxBoundary_t * PwModNdxBoundaryCB;
4645 PwModNdxBoundaryAndCondition_t * PwModNdxBoundaryAndConditionCB;
4646 PwModNdxConnection_t * PwModNdxConnectionCB;
4648 PwBlkSize_t * PwBlkSizeCB;
4649 PwBlkNdxVertData_t * PwBlkNdxVertDataCB;
4650 PwModCustomIndex3SchemeReady_t * PwModCustomIndex3SchemeReadyCB;
4651 PwBlkBoundaryCount_t * PwBlkBoundaryCountCB;
4652 PwBlkEnumBoundaries_t * PwBlkEnumBoundariesCB;
4653 PwBlkConnectionCount_t * PwBlkConnectionCountCB;
4654 PwBlkEnumConnections_t * PwBlkEnumConnectionsCB;
4655 PwBlkNdxBoundary_t * PwBlkNdxBoundaryCB;
4656 PwBlkNdxBoundaryAndCondition_t * PwBlkNdxBoundaryAndConditionCB;
4657 PwBlkNdxConnection_t * PwBlkNdxConnectionCB;
4659 PwBoundary_t * PwBoundaryCB;
4660 PwBndryCondition_t * PwBndryConditionCB;
4661 PwConnection_t * PwConnectionCB;
4667 PwModStreamFaces_t * PwModStreamFacesCB;
4668 PwModEnumElementCount_t * PwModEnumElementCountCB;
4669 PwModEnumElements_t * PwModEnumElementsCB;
4670 PwElemDataModEnum_t * PwElemDataModEnumCB;
4671 PwModAppendEnumElementOrder_t * PwModAppendEnumElementOrderCB;
4677 PwModGetAttributeValue_t * PwModGetAttributeValueCB;
4685 struct PW_DLL_IMPEXP PWGM_HGRIDMODEL_IN_IMPL {
4688 PwModCreateCon_t * PwModCreateConCB;
4689 PwBlkGetVertexList_t * PwBlkGetVertexListCB;
4690 PwDomGetVertexList_t * PwDomGetVertexListCB;
4691 PwConGetVertexList_t * PwConGetVertexListCB;
4692 PwConSetName_t * PwConSetNameCB;
4693 PwBlkSetName_t * PwBlkSetNameCB;
4694 PwDomSetName_t * PwDomSetNameCB;
4695 PwVlstIsUnstructured_t * PwVlstIsUnstructuredCB;
4696 PwVlstGetIndexDimensionality_t * PwVlstGetIndexDimensionalityCB;
4697 PwVlstGetBlkElemDimensionality_t * PwVlstGetBlkElemDimensionalityCB;
4698 PwVlstSetXYZVal3_t * PwVlstSetXYZVal3CB;
4699 PwVlstSetXYZ3_t * PwVlstSetXYZ3CB;
4700 PwVlstReadFile_t * PwVlstReadFileCB;
4701 PwBlkSetProperty_t * PwBlkSetPropertyCB;
4702 PwDomSetProperty_t * PwDomSetPropertyCB;
4703 PwConSetProperty_t * PwConSetPropertyCB;
4704 PwAsmSetProperty_t * PwAsmSetPropertyCB;
4705 PwAsmSetCellSpanConditionKey_t * PwAsmSetCellSpanConditionKeyCB;
4709 PwModCreateUnsVertexList_t * PwModCreateUnsVertexListCB;
4710 PwVlstAllocate_t * PwVlstAllocateCB;
4711 PwVlstCreateUnsBlock_t * PwVlstCreateUnsBlockCB;
4712 PwUnsBlkAllocateElements_t * PwUnsBlkAllocateElementsCB;
4713 PwUnsBlkSetElement_t * PwUnsBlkSetElementCB;
4714 PwVlstCreateUnsDomain_t * PwVlstCreateUnsDomainCB;
4715 PwUnsDomAllocateElements_t * PwUnsDomAllocateElementsCB;
4716 PwUnsDomSetElement_t * PwUnsDomSetElementCB;
4717 PwVlstCreateBlockAssembler_t * PwVlstCreateBlockAssemblerCB;
4718 PwAsmPushElementFace_t * PwAsmPushElementFaceCB;
4719 PwAsmFinalize_t * PwAsmFinalizeCB;
4720 PwAsmGetVertexList_t * PwAsmGetVertexListCB;
4723 PwModCreateStrBlock_t * PwModCreateStrBlockCB;
4724 PwModCreateStrDomain_t * PwModCreateStrDomainCB;
4752 #endif // !_APIGRIDMODEL_H_
static PWP_UINT32 faceCB(PWGM_FACESTREAM_DATA *data)
void * userData
The PwModStreamFaces user data ptr.
PWP_INT32 j
j-coordinate used for 3D and 2D grids
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 h)
Creates an unstructured block that uses vertices from an unstructured vertex list.
@ PWGM_CNXNTYPE_NONE
unspecified
Grid element handle declaration.
Only used as a generic base handle for PWGM_HVERTEXLIST.
@ 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 *pElemData)
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 h)
PWP_BOOL PwModNdxBoundary(PWGM_HGRIDMODEL model, PWP_UINT32 ndx, PWGM_BNDRYDATA *pBndryData)
Get the data for the model's nth structured boundary.
void * userData
The PwModStreamFaces user data ptr.
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.
PWP_UINT32 neighbor
The id of the cell sharing the face with the owner.
PWGM_HVERTEXLIST PwModCreateUnsVertexList2(PWGM_HGRIDMODEL model)
Creates an empty, unstructured vertex list in a model for 2-D blocks and 1-D domains.
@ PWGM_GRIDTYPE_STRUCTURED
Structured grid.
PWP_UINT32 PwDomElementCount(PWGM_HDOMAIN domain, PWGM_ELEMCOUNTS *pCounts)
Get the number of domain elements.
PWP_BOOL PwVlstSetXYZ2(PWGM_HVERTEXLIST h, 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.
PWGM_ENUM_FACETYPE type
One of the PWGM_FACETYPE_XXX types.
PWGM_HELEMENT hBlkElement
The owning block's locally indexed element handle.
const char * PwFaceOrderToText(PWGM_ENUM_FACEORDER faceOrder)
Maps a PWGM_ENUM_FACEORDER value to a human readable string.
PWP_BOOL PwVlstSetXYZ2Data(PWGM_HVERTEXLIST h, 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_ELEMORDER_WEDGE
Order by 3D, extruded, tri/quad grid element.
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 h, 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.
const char * name
connection name
PWP_ENUM_VALTYPE
Supported PWP-API getValue() transfer types.
@ PWGM_CNXNTYPE_ONE_TO_ONE
one-to-one grid point match
@ 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_UINT32 vertCnt
Number of vertices in the face.
PWP_UINT32 cellIndex
The cell's index in the model's index space (0..totalNumCells-1)
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.
Only used as a generic base handle for PWGM_HELEMENT.
#define PWGM_ELEMDATA_VERT_SIZE
Maximum number of verts allowed per element.
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 h, 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 h, 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 h, 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 cellFaceIndex
The cell's local face index (0..numCellFaces-1).
PWGM_ENUM_FACETYPE
The facetypes supported by face streaming.
PWP_UINT32 tid
cae-defined condition id
PWP_BOOL PwBlock(PWGM_HBLOCK block, PWGM_BLOCKDATA *pBlockData)
Get the block data.
PWGM_ELEMDATA elemData
Element descriptor 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_HBLOCK block
boundary block
@ 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
PWGM_HGRIDMODEL model
The grid model.
PWP_BOOL PwBlkSize(PWGM_HBLOCK block, PWGM_STR_SIZE *pSize)
Get the block's vertex-size.
@ PWGM_ELEMORDER_PYRAMID
Order by 3D, 5-sided, quad-based grid element.
PWP_BOOL PwUnsDomAllocateElements(PWGM_HDOMAIN h, const PWGM_ENUM_ELEMTYPE cellType, const PWP_UINT count)
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.
PWGM_CNXNTYPE
Structured grid block-point association.
PWP_BOOL PwAsmPushElementFace(PWGM_HBLOCKASSEMBLER h, 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.
PWGM_HGRIDMODEL model
The grid model.
PWP_BOOL PwAsmSetConditionTypeName(PWGM_HBLOCKASSEMBLER assembler, const PWGM_CONDKEY key, const char *typeName)
Sets the type name of the condition identified by key.
PWGM_ENUM_FACEORDER order
The requested cell face stream sequence order.
@ PWGM_GRIDTYPE_UNSTRUCTURED
Unstructured grid.
PWP_BOOL PwConSetName(PWGM_HCONNECTOR h, const char *name)
Set a connector's name.
An opaque handle to a structured, inter-block connection.
#define PWP_DECLARE_HEGRPITEM(sname, name)
Declares a sub-element group data handle type.
PWP_BOOL PwModGetAttributeUINT32(PWGM_HGRIDMODEL model, const char *name, PWP_UINT32 *val)
Get an attribute value as a specific type.
PWP_BOOL PwModGetAttributeFLOAT(PWGM_HGRIDMODEL model, const char *name, PWP_FLOAT *val)
Get an attribute value as a specific type.
PWP_BOOL PwAsmFinalize(PWGM_HBLOCKASSEMBLER h)
Stitches together all the faces added to the assembler into cells and blocks.
PWGM_FACEREF_DATA owner
Information about the block element that owns face.
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_ENUM_ELEMTYPE type
One of the PWGM_ELEMTYPE_XXX values.
PWGM_HCNXN PwModEnumConnections(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model's connections.
Element descriptor data type.
PWGM_HBLOCK block2
connection block2 (donor)
PWGM_ENUM_ELEMORDER
Types of element orderings.
PWP_UINT32 PwBlkElementCount(PWGM_HBLOCK block, PWGM_ELEMCOUNTS *pCounts)
Get the number of block elements.
PWGM_HDOMAIN domain
The handle of the boundary domain that contains this cell's side of the face.
@ PWGM_IJK_K
K-component id.
PWP_INT32 i
i-coordinate used for 3D and 2D grids
PWGM_ENUM_FACETYPE type
One of the PWGM_FACETYPE_XXX types.
@ PWGM_ELEMTYPE_TRI
2D, 3-sided grid element
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.
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
#define PWP_DECLARE_HANDLE(name)
Declares a root-level, strongly-typed data handle type.
@ PWGM_ELEMTYPE_PYRAMID
3D, 5-sided, quad-based grid element
@ PWGM_ELEMORDER_QUAD
Order by 2D, 4-sided grid element.
PWP_BOOL PwUnsBlkSetElement(PWGM_HBLOCK h, 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 *cbData)
Notifys the Pointwise export framework that the custom, structured index3 map is ready.
PWGM_HGRIDMODEL model
The grid model.
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 assembler, 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.
PWGM_HBLOCK block1
connection block1 (source)
PWP_UINT32(* PWGM_BEGINSTREAMCB)(PWGM_BEGINSTREAM_DATA *data)
The begin stream callback function signature.
@ PWGM_ELEMORDER_TET
Order by 3D, 4-sided (tetrahedral) grid element.
PWP_BOOL PwDomCondition(PWGM_HDOMAIN domain, PWGM_CONDDATA *pCondData)
Get the domain condition data.
Structured grid ijk index data type.
PWGM_HCNXN PwBlkEnumConnections(PWGM_HBLOCK block, PWP_UINT32 ndx)
Sequentially enumerate the block's connections.
PWP_BOOL PwVlstSetXYZData(PWGM_HVERTEXLIST h, 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 assembler, const PWGM_CONDKEY key, const PWP_UINT32 userId)
Sets the user id of the condition identified by key.
PWP_BOOL PwVlstSetXYZ(PWGM_HVERTEXLIST h, 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_ELEMDATA elemData
The face's element data.
@ PWGM_FACEORDER_BCGROUPSFIRST
BoundaryFirst grouped by BCs.
PWP_UINT32 neighborCellIndex
The cell index for the block element on the other side of the face.
PWGM_HBNDRY PwBlkEnumBoundaries(PWGM_HBLOCK block, PWP_UINT32 ndx)
Sequentially enumerate the block's boundaries.
@ PWGM_FACETYPE_INTERIOR
The cell face is on the grid's interior.
PWP_BOOL PwAsmSetCellSpanConditionKey(PWGM_HBLOCKASSEMBLER assembler, 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_FACE_ID
Structured grid block-face ids.
PWGM_INDEX3 PwXformApply(const PWGM_INDEX_XFORM *pX3, PWGM_INDEX3 ijk)
Apply a PWGM_INDEX_XFORM transform to a PWGM_INDEX3 value.
@ PWGM_XYZ_Y
Y-component id.
@ PWGM_FACEORDER_BCGROUPSLAST
InteriorFirst grouped by BCs.
@ PWGM_XYZ_Z
Z-component id.
PWGM_FACE_ID face1
face Id on block1
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_ENUM_GRIDTYPE gridType
grid type
PWGM_INDEX3 end
ending index
PWP_BOOL PwModGetAttributeREAL(PWGM_HGRIDMODEL model, const char *name, PWP_REAL *val)
Get an attribute value as a specific type.
Element count information.
@ PWGM_ELEMORDER_TRI
Order by 2D, 3-sided grid element.
PWGM_INDEX_XFORM from1to2
transforms block1 index to block2 index
PWGM_STR_RANGE range
boundary ijk range
PWGM_ELEMCOUNTS counts
The model's total element counts.
PWP_BOOL PwVlstIsStructured(PWGM_HVERTEXLIST h)
Check the type of a vertex list.
PWP_UINT32 totalNumFaces
The total number of faces in the entire model (= numBoundaryFaces + numInteriorFaces).
PWGM_FACE_ID face
boundary face id
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)
Get an attribute value as a specific type.
@ 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.
Data passed to a PWGM_BEGINSTREAMCB callback function.
PWP_UINT32 vertCnt
Number of vertices.
PWP_UINT32 PwModBoundaryCount(PWGM_HGRIDMODEL model)
Get the number of structured grid boundaries in the model.
PWP_BOOL PwAsmSetProperty(PWGM_HBLOCKASSEMBLER assembler, 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 h, 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 h, 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.
PWP_UINT32 numInteriorFaces
How many faces in totalNumFaces that are interior to the model.
PWGM_HVERTEXLIST PwBlkGetVertexList(PWGM_HBLOCK h)
Get the vertex list associated with an unstructured or structured block.
PWGM_HBLOCKASSEMBLER PwVlstCreateBlockAssembler(PWGM_HVERTEXLIST h)
Creates an unstructured block face assembler that uses vertices from an unstructured vertex list.
void * userData
The PwModStreamFaces user data ptr.
@ PWGM_CNXNTYPE_MANY_TO_ONE
one-to-many grid point match
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)
Get an attribute value as a specific type.
PWGM_HVERTEXLIST PwModCreateUnsVertexList3(PWGM_HGRIDMODEL model)
Creates an empty, unstructured vertex list in a model for 3-D blocks and 2-D domains.
PWGM_HELEMENT blockElem
The block cell element's handle.
PWP_INT32 i
i-coordinate used for 2D grids
PWGM_HVERTEXLIST PwConGetVertexList(PWGM_HCONNECTOR h)
Get the vertex list associated with a connector.
@ PWGM_FACE_UNSTR
unstructured
PWP_UINT32 owner
The id of the cell that owns the face.
PWGM_HELEMENT PwModEnumElements(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model's block elements.
PWP_BOOL PwModGetAttributeINT32(PWGM_HGRIDMODEL model, const char *name, PWP_INT32 *val)
Get an attribute value as a specific type.
PWP_BOOL PwVlstAllocate(PWGM_HVERTEXLIST h, const PWP_UINT count)
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.
Information about a block cell element that touches a face.
PWP_BOOL PwUnsBlkAllocateElementCounts(PWGM_HBLOCK h, 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.
PWGM_STR_SIZE size
vertex-size
const char * name
boundary name
PWP_BOOL PwModNdxConnection(PWGM_HGRIDMODEL model, PWP_UINT32 ndx, PWGM_CNXNDATA *pCnxnData)
Get the data for the model's nth connection.
PWP_BOOL ok
PWP_TRUE if streaming completed successfully.
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.
@ PWGM_CNXNTYPE_MANY_TO_MANY
many-to-many grid point match
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.
Data passed to a PWGM_ENDSTREAMCB callback function.
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.
Data passed to a PWGM_FACESTREAMCB callback function.
PWGM_HBLOCK PwModEnumBlocks(PWGM_HGRIDMODEL model, PWP_UINT32 ndx)
Sequentially enumerate the model block elements.
PWGM_HDOMAIN PwVlstCreateUnsDomain(PWGM_HVERTEXLIST h)
Creates an unstructured domain that uses vertices from an unstructured vertex list.
PWP_REAL PWGM_XYZVAL
XYZ component data type.
@ PWGM_FACETYPE_BOUNDARY
The cell face is on the grid's boundary.
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 h, const PWP_UINT ndx, const PWGM_ELEMDATA *eData)
Sets the connectivity for an unstructured domain element.
PWP_UINT32 i
vertex index in parent's model-space
@ PWGM_FACETYPE_CONNECTION
The cell face is on the grid's interior.
PWP_BOOL PwModGetAttributeString(PWGM_HGRIDMODEL model, const char *name, const char **val)
Get an attribute value as a specific type.
PWGM_STR_RANGE range2
ijk connection range in block2 index space
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 h, 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.
Structured grid, inter-block, connection data type.
An opaque handle to a grid vertex element.
Pointwise Plugin API (PWP-API)
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 h, const char *name)
Set a domain's name.
PWGM_INDEX_XFORM from2to1
transforms block2 index to block1 index (== inverse(from1to2)
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.
PWGM_HELEMENT domainElem
The domain cell element's handle.
PWGM_FACE_ID face2
face Id on block2
PWP_UINT PwVlstGetIndexDimensionality(PWGM_HVERTEXLIST h)
Get the index dimensionality of a vertex list.
PWGM_HVERTEXLIST PwDomGetVertexList(PWGM_HDOMAIN h)
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.
@ PWGM_ELEMORDER_VC
Order by VC id.
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.
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 assembler, 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 assembler, const PWGM_CONDKEY key, const char *userName)
Sets the user name of the condition identified by key.
PWGM_HVERTEXLIST PwAsmGetVertexList(PWGM_HBLOCKASSEMBLER h)
Get the vertex list associated with an unstructured block assembler.
PWP_UINT32 numBoundaryFaces
How many faces in totalNumFaces lie on the model's boundary.
@ PWGM_ELEMORDER_HEX
Order by 3D, 6-sided (block) grid element.
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 *cbData)
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_XYZ_X
X-component id.
PWGM_HCONNECTOR PwModCreateCon(PWGM_HGRIDMODEL model, PWP_UINT size)
Creates a connector in a model.
#define PWP_DECLARE_HELEMGROUP(pname, name)
Declares a parented, strongly-typed, element group data handle type.
PWP_ENUM_PRECISION
File precision values.
Structured grid ijk range data type.
PWP_BOOL PwUnsBlkAllocateElements(PWGM_HBLOCK h, const PWGM_ENUM_ELEMTYPE cellType, const PWP_UINT count)
Allocates element storage in an unstructured block.
PWP_BOOL PwVlstIsUnstructured(PWGM_HVERTEXLIST h)
Check the type of a vertex list.
PWP_ENUM_DIMENSION PwVlstGetBlkElemDimensionality(PWGM_HVERTEXLIST h)
Get the block element dimensionality of a vertex list.
PWP_UINT32 face
The face's index in the model's index space.
Grid vertex list handle declaration.
const char * PwElemTypeToText(PWGM_ENUM_ELEMTYPE type)
Maps a PWGM_ENUM_ELEMTYPE value to a human readable string.
PWGM_STR_RANGE range1
ijk connection range in block1 index space
PWP_BOOL PwModGetAttributeUINT(PWGM_HGRIDMODEL model, const char *name, PWP_UINT *val)
Get an attribute value as a specific type.
@ 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)
Get an attribute value as a specific type.
PWGM_HBLOCK block
The handle of the block that owns this cell element.
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.