Pointwise Plugin SDK
apiCAEP.h
Go to the documentation of this file.
1 /****************************************************************************
2  *
3  * Pointwise CAE Plugin API (CAE-API) v1.0
4  *
5  * (C) 2021 Cadence Design Systems, Inc. All rights reserved worldwide.
6  *
7  ***************************************************************************/
8 
9 #ifndef _APICAE_H_
10 #define _APICAE_H_
11 
12 #include "apiGridModel.h"
13 #include "apiPWP.h"
14 #include "apiPWPUtils.h"
15 
16 
17 extern "C" {
18 
19 
27 /***********************************************************/
28 /***********************************************************/
49 #define CAEP_VALUE_GROUP "SDK.Plugin.CAE"
50 #define CAEP_GROUP_VALUE_NAMES PWU_GROUP_VALUE_NAMES(CAEP_VALUE_GROUP)
51 #define CAEP_GROUP_VALUE_DEFNS PWU_GROUP_VALUE_DEFNS(CAEP_VALUE_GROUP)
52 
53 #define CAEP_INFO_GROUP CAEP_VALUE_GROUP ".INFO"
54 
55 
56 /***********************************************************/
57 /***********************************************************/
62 /*---------------------------------------------------------*/
67 struct CAEP_BCINFO {
70  const char *phystype;
71 
75 };
76 
77 
78 //--------------------------------------------
83 #define CAEP_ENUM_FILEDEST PWP_ENUM_FILEDEST
84 #define CAEP_ENUM_DIMENSION PWP_ENUM_DIMENSION
85 #define CAEP_ENUM_ENCODING PWP_ENUM_ENCODING
86 #define CAEP_ENUM_PRECISION PWP_ENUM_PRECISION
87 
90 /*---------------------------------------------------------*/
103  const char *group;
104 
107  const char *name;
108 
112 
122 
126 
130 
134 
138 
142 
146 
150 
154 
158 };
159 
160 
161 /*---------------------------------------------------------*/
166 struct CAEP_VCINFO {
169  const char *phystype;
170 
174 };
175 
176 
177 /*---------------------------------------------------------*/
187  const char *fileDest;
188 
192 
196 
200 
204 
208 };
209 
210 /*---------------------------------------------------------*/
220  /* DOXGRP_APICAEP_TYPES */
222 
223 
224 /***********************************************************/
225 /***********************************************************/
230 /*---------------------------------------------------------*/
243 PWP_PROTOTYPE_DECL CAEP_EXPORTER
245 
246 /*---------------------------------------------------------*/
257 PWP_PROTOTYPE_DECL CAEP_EXPORTER
258 PwCreateCaeByName(const char name[]);
259 
260 /*---------------------------------------------------------*/
269 PWP_PROTOTYPE_DECL PWP_VOID
270 PwDestroyCae(CAEP_EXPORTER *handle);
271 
272 /*---------------------------------------------------------*/
293 PWP_PROTOTYPE_DECL const char*
294 PwEnumCaeFormat(PWP_UINT32 ndx, CAEP_FORMATINFO *pFormatInfo);
295 
296 /*---------------------------------------------------------*/
301 PWP_PROTOTYPE_DECL PWP_UINT32
303 
304 /*---------------------------------------------------------*/
327 PWP_PROTOTYPE_DECL const char*
328 PwCaeFormat(CAEP_EXPORTER handle, CAEP_FORMATINFO *pFormatInfo);
329 
330 /*---------------------------------------------------------*/
342 PWP_PROTOTYPE_DECL PWP_BOOL
344 
345 /*---------------------------------------------------------*/
361 PWP_PROTOTYPE_DECL const char*
362 PwCaeEnumBCs(CAEP_EXPORTER handle, PWP_UINT32 ndx, CAEP_BCINFO *pBCInfo);
363 
364 /*---------------------------------------------------------*/
376 PWP_PROTOTYPE_DECL const char*
378 
379 /*---------------------------------------------------------*/
395 PWP_PROTOTYPE_DECL const char*
396 PwCaeEnumVCs(CAEP_EXPORTER handle, PWP_UINT32 ndx, CAEP_VCINFO *pVCInfo);
397 
398 /*---------------------------------------------------------*/
407 PWP_PROTOTYPE_DECL PWP_UINT32
409 
410 /*---------------------------------------------------------*/
420 PWP_PROTOTYPE_DECL PWP_UINT32
422 
423 /*---------------------------------------------------------*/
432 PWP_PROTOTYPE_DECL PWP_UINT32
434 
435 /*---------------------------------------------------------*/
456 PWP_PROTOTYPE_DECL PWP_BOOL
458  const CAEP_WRITEINFO *pWriteInfo);
459 
464 } /* extern "C" */
465 
466 #endif /* !_APICAE_H_ */
PwCreateCaeByName
PWP_PROTOTYPE_DECL CAEP_EXPORTER PwCreateCaeByName(const char name[])
Create CAE exporter instance with given name.
Definition: apiCAEP.cxx:103
CAEP_FORMATINFO::allowedDimension2D
PWP_BOOL allowedDimension2D
Set to PWP_TRUE if 2D exports supported.
Definition: apiCAEP.h:153
CAEP_FORMATINFO::allowedVolumeConditions
PWP_BOOL allowedVolumeConditions
Set to PWP_TRUE if VCs are supported.
Definition: apiCAEP.h:129
PwCreateCaeById
PWP_PROTOTYPE_DECL CAEP_EXPORTER PwCreateCaeById(PWP_UINT32 id)
Create CAE exporter instance with given id.
Definition: apiCAEP.cxx:92
PWP_UINT32
unsigned int PWP_UINT32
32-bit unsigned integer
Definition: apiPWP.h:210
PwCaeEnumFileExt
PWP_PROTOTYPE_DECL const char * PwCaeEnumFileExt(CAEP_EXPORTER handle, PWP_UINT32 ndx)
Enumerate supported file extensions for a CAE exporter instance.
Definition: apiCAEP.cxx:184
PwCaeGetFileExtCount
PWP_PROTOTYPE_DECL PWP_UINT32 PwCaeGetFileExtCount(CAEP_EXPORTER handle)
Get the number of supported file extensions for a CAE exporter instance.
Definition: apiCAEP.cxx:221
PwCaeEnumVCs
PWP_PROTOTYPE_DECL const char * PwCaeEnumVCs(CAEP_EXPORTER handle, PWP_UINT32 ndx, CAEP_VCINFO *pVCInfo)
Enumerate CAEP_VCINFO data for a CAE exporter instance.
Definition: apiCAEP.cxx:194
CAEP_VCINFO::id
PWP_UINT32 id
VC physical type id.
Definition: apiCAEP.h:173
CAEP_FORMATINFO::group
const char * group
The plugin's group name.
Definition: apiCAEP.h:103
PwCaeFormat
PWP_PROTOTYPE_DECL const char * PwCaeFormat(CAEP_EXPORTER handle, CAEP_FORMATINFO *pFormatInfo)
Get CAEP_FORMATINFO data for a CAE exporter handle.
Definition: apiCAEP.cxx:145
PWP_INT32
int PWP_INT32
32-bit integer
Definition: apiPWP.h:207
CAEP_FORMATINFO
The information returned for each supported CAEP exporter.
Definition: apiCAEP.h:98
CAEP_BCINFO::id
PWP_INT32 id
BC physical type id.
Definition: apiCAEP.h:74
PWGM_HGRIDMODEL
An opaque handle to a grid model.
Definition: apiGridModel.h:326
PWP_VOID
void PWP_VOID
no value
Definition: apiPWP.h:317
CAEP_WRITEINFO::precision
PWP_ENUM_PRECISION precision
export precision.
Definition: apiCAEP.h:199
CAEP_FORMATINFO::allowedDataPrecisionSingle
PWP_BOOL allowedDataPrecisionSingle
Set to PWP_TRUE if single precision data supported in export.
Definition: apiCAEP.h:145
PwCaeGetBCCount
PWP_PROTOTYPE_DECL PWP_UINT32 PwCaeGetBCCount(CAEP_EXPORTER handle)
Get the number of BC's for a CAE exporter instance.
Definition: apiCAEP.cxx:209
apiGridModel.h
Pointwise Grid Model API Specification (PWGM-API)
PWP_ENUM_ENCODING
PWP_ENUM_ENCODING
File encoding values.
Definition: apiPWP.h:782
CAEP_FORMATINFO::allowedFileFormatBinary
PWP_BOOL allowedFileFormatBinary
Set to PWP_TRUE if Binary files supported in export.
Definition: apiCAEP.h:137
CAEP_FORMATINFO::allowedDimension3D
PWP_BOOL allowedDimension3D
Set to PWP_TRUE if 3D exports supported.
Definition: apiCAEP.h:157
CAEP_WRITEINFO::byteOrder
PWP_ENDIANNESS byteOrder
export byte order.
Definition: apiCAEP.h:207
PWP_DECLARE_HANDLE
#define PWP_DECLARE_HANDLE(name)
Declares a root-level, strongly-typed data handle type.
Definition: apiPWP.h:340
CAEP_VCINFO::phystype
const char * phystype
VC physical type name.
Definition: apiCAEP.h:169
PwCaeElementType
PWP_PROTOTYPE_DECL PWP_BOOL PwCaeElementType(CAEP_EXPORTER handle, PWGM_ENUM_ELEMTYPE which)
Test if CAE exporter instance supports the given element type.
Definition: apiCAEP.cxx:157
PwCaeEnumBCs
PWP_PROTOTYPE_DECL const char * PwCaeEnumBCs(CAEP_EXPORTER handle, PWP_UINT32 ndx, CAEP_BCINFO *pBCInfo)
Enumerate CAEP_BCINFO data for a CAE exporter instance.
Definition: apiCAEP.cxx:169
CAEP_WRITEINFO::encoding
PWP_ENUM_ENCODING encoding
export file encoding.
Definition: apiCAEP.h:195
CAEP_FORMATINFO::name
const char * name
format Name.
Definition: apiCAEP.h:107
PWGM_ENUM_ELEMTYPE
PWGM_ENUM_ELEMTYPE
Element type ids.
Definition: apiGridModel.h:672
PwDestroyCae
PWP_PROTOTYPE_DECL PWP_VOID PwDestroyCae(CAEP_EXPORTER *handle)
Destroy CAE exporter instance.
Definition: apiCAEP.cxx:114
PwCaeGetVCCount
PWP_PROTOTYPE_DECL PWP_UINT32 PwCaeGetVCCount(CAEP_EXPORTER handle)
Get the number of VC's for a CAE exporter instance.
Definition: apiCAEP.cxx:233
CAEP_FORMATINFO::id
PWP_UINT32 id
format guid.
Definition: apiCAEP.h:111
CAEP_WRITEINFO::dimension
PWP_ENUM_DIMENSION dimension
export dimensionality.
Definition: apiCAEP.h:203
PwGetCaeFormatCount
PWP_PROTOTYPE_DECL PWP_UINT32 PwGetCaeFormatCount()
Get the number of supported CAE exporters.
Definition: apiCAEP.cxx:138
PwCaeGridWrite
PWP_PROTOTYPE_DECL PWP_BOOL PwCaeGridWrite(CAEP_EXPORTER handle, PWGM_HGRIDMODEL model, const CAEP_WRITEINFO *pWriteInfo)
Initiates writing a grid model.
Definition: apiCAEP.cxx:245
CAEP_FORMATINFO::allowedFileFormatUnformatted
PWP_BOOL allowedFileFormatUnformatted
Set to PWP_TRUE if Unformatted files supported in export.
Definition: apiCAEP.h:141
PWP_ENDIANNESS
PWP_ENDIANNESS
Flags used to indicate endianness or control endian behaviors in functions.
Definition: apiPWP.h:822
CAEP_WRITEINFO::conditionsOnly
PWP_BOOL conditionsOnly
Set to PWP_TRUE if only Conditions exported.
Definition: apiCAEP.h:191
PWP_BOOL
int PWP_BOOL
logical value
Definition: apiPWP.h:303
PwEnumCaeFormat
PWP_PROTOTYPE_DECL const char * PwEnumCaeFormat(PWP_UINT32 ndx, CAEP_FORMATINFO *pFormatInfo)
Enumerate CAEP_FORMATINFO data for all supported CAE exporters.
Definition: apiCAEP.cxx:127
CAEP_VCINFO
Volume condition definition information.
Definition: apiCAEP.h:166
CAEP_WRITEINFO
CAE export write control information.
Definition: apiCAEP.h:184
CAEP_FORMATINFO::fileDest
PWP_ENUM_FILEDEST fileDest
Specifies the desired output destination type.
Definition: apiCAEP.h:121
CAEP_BCINFO
Boundary condition definition information.
Definition: apiCAEP.h:67
CAEP_FORMATINFO::allowedFileFormatASCII
PWP_BOOL allowedFileFormatASCII
Set to PWP_TRUE if ASCII files supported in export.
Definition: apiCAEP.h:133
CAEP_WRITEINFO::fileDest
const char * fileDest
requested file destination.
Definition: apiCAEP.h:187
CAEP_BCINFO::phystype
const char * phystype
BC physical type name.
Definition: apiCAEP.h:70
apiPWPUtils.h
Data and functions useful to PWP-API compliant plugins.
apiPWP.h
Pointwise Plugin API (PWP-API)
PWP_ENUM_DIMENSION
PWP_ENUM_DIMENSION
Supported dimensionality values.
Definition: apiPWP.h:763
CAEP_FORMATINFO::allowedExportConditionsOnly
PWP_BOOL allowedExportConditionsOnly
Set to PWP_TRUE if separate Condition export supported.
Definition: apiCAEP.h:125
CAEP_FORMATINFO::allowedDataPrecisionDouble
PWP_BOOL allowedDataPrecisionDouble
Set to PWP_TRUE if double precision data supported in export.
Definition: apiCAEP.h:149
PWP_ENUM_PRECISION
PWP_ENUM_PRECISION
File precision values.
Definition: apiPWP.h:802
CAEP_EXPORTER
CAEP exporter instance handle.
Definition: apiCAEP.h:219
PWP_ENUM_FILEDEST
PWP_ENUM_FILEDEST
File destination types.
Definition: apiPWP.h:743