Pointwise Plugin SDK
Classes | Macros | Typedefs | Enumerations | Functions
apiPWP.h File Reference

Pointwise Plugin API (PWP-API) More...

+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  PWP_APIINFO
 The API information returned by plugins for each supported API. More...
 
struct  PWP_HVALUE_IMPL
 
struct  PWP_HVALUE
 An opaque handle to a value. More...
 
struct  PWP_LICENSEDATA
 Installation's license data. NOT IMPLEMENTED YET. More...
 
struct  PWP_MSG_PROGRESS
 The data sent by plugins for progress messages. More...
 
struct  PWP_MSG_TEXT
 The data sent by plugins for text messages. More...
 
struct  PWP_PLUGININFO
 Provides general information about a plugin. More...
 
struct  PWP_VERSION
 Version data. More...
 

Macros

#define CAEP_API_EXPORT   PWP_API_CAE_EXPORT
 Legacy alias for CAE Export API specification base name. More...
 
#define PWP_API_CAE_EXPORT   "Export-CAE"
 The CAE Export API specification base name. More...
 
#define PWP_API_GRID_IMPORT   "Import-GRID"
 The Grid Import API specification base name. More...
 
#define PWP_API_PLUGIN   "Plugin-PWP"
 The PWP API specification base name. More...
 
#define PWP_BADID   (~((PWP_UINT32)0))
 Bad id value. More...
 
#define PWP_BADTYPE   ((unsigned char)~0)
 Bad type value. More...
 
#define PWP_CAST_BOOL(v)   ((v) ? PWP_TRUE : PWP_FALSE)
 Cast a value to a PWP_BOOL value (PWP_TRUE or PWP_FALSE) More...
 
#define PWP_DECLARE_HANDLE(name)
 Declares a root-level, strongly-typed data handle type. More...
 
#define PWP_DECLARE_HEGRPITEM(sname, name)
 Declares a sub-element group data handle type. More...
 
#define PWP_DECLARE_HELEMGROUP(pname, name)
 Declares a parented, strongly-typed, element group data handle type. More...
 
#define PWP_FALSE   (0)
 PWP_BOOL logical "false" value. More...
 
#define PWP_HANDLE_GET_IMPL(h, hTyp)   reinterpret_cast<hTyp##_IMPL*>(h)
 get an implementation ptr from internal handle values More...
 
#define PWP_HANDLE_INIT   0
 Static init value for a PWP_DECLARE_HANDLE() handle. More...
 
#define PWP_HANDLE_ISVALID(h)   (0 != h)
 Test the validity of a PWP_DECLARE_HANDLE() handle. More...
 
#define PWP_HANDLE_SET(h, v)   h=v
 Runtime set of a PWP_DECLARE_HANDLE() handle. More...
 
#define PWP_HANDLE_SET_IMPL(h, hTyp, impl)   (h=reinterpret_cast<hTyp>(&impl))
 assigns internal handle values using an implementation More...
 
#define PWP_HEGI_H(h)   ((h).parent.hP)
 Extract the parent PWP_DECLARE_HELEMGROUP() handle. More...
 
#define PWP_HEGI_ID(h)   ((h).id)
 Extract the item id from a PWP_DECLARE_HEGRPITEM() handle. More...
 
#define PWP_HEGI_INIT   {{0, PWP_BADID}, PWP_BADTYPE, PWP_BADID}
 Static init value for a PWP_DECLARE_HEGRPITEM() handle. More...
 
#define PWP_HEGI_ISVALID(h)
 Test the validity of a PWP_DECLARE_HEGRPITEM() handle. More...
 
#define PWP_HEGI_PID(h)   ((h).parent.id)
 Extract the parent PWP_DECLARE_HELEMGROUP() id. More...
 
#define PWP_HEGI_PTYPE(h)   ((h).ptype)
 Extract the parent-type id from a PWP_DECLARE_HEGRPITEM() handle. More...
 
#define PWP_HEGI_SET(h, p, pt, pid, v)
 Runtime set of a PWP_DECLARE_HEGRPITEM() handle. More...
 
#define PWP_HEGRP_H(h)   ((h).hP)
 Extract the parent handle from a PWP_DECLARE_HELEMGROUP() handle. More...
 
#define PWP_HEGRP_ID(h)   ((h).id)
 Extract the id from a PWP_DECLARE_HELEMGROUP() handle. More...
 
#define PWP_HEGRP_INIT   {0,PWP_BADID}
 Static init value for a PWP_DECLARE_HELEMGROUP() handle. More...
 
#define PWP_HEGRP_ISVALID(h)
 Test the validity of a PWP_DECLARE_HELEMGROUP() handle. More...
 
#define PWP_HEGRP_SET(h, p, v)   { (h).hP=(p); (h).id=(v); }
 Runtime set of a PWP_DECLARE_HELEMGROUP() handle. More...
 
#define PWP_HVALUE_GET_IMPL(h)   PWP_HANDLE_GET_IMPL(h, PWP_HVALUE)
 obtains the underlying PWP_HVALUE_IMPL ptr from the handle More...
 
#define PWP_HVALUE_INIT   PWP_HANDLE_INIT
 static data init value More...
 
#define PWP_HVALUE_ISVALID(h)   PWP_HANDLE_ISVALID(h)
 returns non-zero value if handle is valid More...
 
#define PWP_HVALUE_SET(h, v)   PWP_HANDLE_SET(h, v)
 assigns internal handle values More...
 
#define PWP_HVALUE_SET_IMPL(h, hTyp)   PWP_HANDLE_SET_IMPL(h, PWP_HVALUE, hTyp)
 assigns internal handle values using an implementation More...
 
#define PWP_HVALUE_SET_INVALID(h)   PWP_HVALUE_SET(h, PWP_HANDLE_INIT)
 resets handle to an invalid state More...
 
#define PWP_MESSAGECB_DEFAULT   "@@default"
 Special API name used to register the default message handler. More...
 
#define PWP_MESSAGECB_SPY   "@@spy"
 Special API name used to register the spy message handler. More...
 
#define PWP_TRUE   (!PWP_FALSE)
 PWP_BOOL logical "true" value. More...
 
#define PWP_UINT16_MAX   ((PWP_UINT16)(~0))
 maximum valid PWP_UINT16 value More...
 
#define PWP_UINT16_UNDEF   PWP_UINT16_MAX
 "undefined" PWP_UINT16 value More...
 
#define PWP_UINT32_MAX   ((PWP_UINT32)(~0))
 maximum valid PWP_UINT32 value More...
 
#define PWP_UINT32_UNDEF   PWP_UINT32_MAX
 "undefined" PWP_UINT32 value More...
 
#define PWP_UINT64_MAX   ((PWP_UINT64)(~0))
 maximum valid PWP_UINT64 value More...
 
#define PWP_UINT64_UNDEF   PWP_UINT64_MAX
 "undefined" PWP_UINT64 value More...
 
#define PWP_UINT8_MAX   ((PWP_UINT8)(~0))
 maximum valid PWP_UINT8 value More...
 
#define PWP_UINT8_UNDEF   PWP_UINT8_MAX
 "undefined" PWP_UINT8 value More...
 
#define PWP_UINT_MAX   ((PWP_UINT)(~0))
 maximum valid PWP_UINT value More...
 
#define PWP_UINT_UNDEF   PWP_UINT_MAX
 "undefined" PWP_UINT value More...
 
#define PWU_GROUP_JOIN(j1, j2)   j1 "." j2
 
#define PWU_GROUP_VALUE_DEFNS(grp)   PWU_GROUP_JOIN(grp, PWU_PUBLISH_DEFNS_STR)
 
#define PWU_GROUP_VALUE_NAMES(grp)   PWU_GROUP_JOIN(grp, PWU_PUBLISH_NAMES_STR)
 
#define PWU_PUBLISH_DEFNS_STR   "PublishedVar.Definitions"
 
#define PWU_PUBLISH_NAMES_STR   "PublishedVar.Names"
 
#define PWU_VALUE_DEFN_ACCESS_STR   "access"
 
#define PWU_VALUE_DEFN_DEFAULT_STR   "default"
 
#define PWU_VALUE_DEFN_DESC_STR   "description"
 
#define PWU_VALUE_DEFN_NAME_STR   "name"
 
#define PWU_VALUE_DEFN_RANGE_STR   "range"
 
#define PWU_VALUE_DEFN_TYPE_STR   "type"
 

Typedefs

typedef int PWP_BOOL
 logical value More...
 
typedef float PWP_FLOAT
 32-bit real More...
 
typedef long PWP_INT
 integer same size as void* More...
 
typedef short PWP_INT16
 16-bit integer More...
 
typedef int PWP_INT32
 32-bit integer More...
 
typedef long long PWP_INT64
 64-bit integer More...
 
typedef signed char PWP_INT8
 8-bit integer More...
 
typedef PWP_UINT32(* PWP_MESSAGECB) (const char api[], PWP_ENUM_MSGID id, void *pMsg)
 Message handler callback function signature. More...
 
typedef double PWP_REAL
 64-bit real More...
 
typedef unsigned long PWP_UINT
 unsigned integer same size as void* More...
 
typedef unsigned short PWP_UINT16
 16-bit unsigned integer More...
 
typedef unsigned int PWP_UINT32
 32-bit unsigned integer More...
 
typedef unsigned long long PWP_UINT64
 64-bit unsigned integer More...
 
typedef unsigned char PWP_UINT8
 8-bit unsigned integer More...
 
typedef PWP_UINT32 PWP_VERSIONVAL
 Version data component value. More...
 
typedef void PWP_VOID
 no value More...
 
typedef PWP_BOOL PwpValue_t(const void *dest, PWP_ENUM_VALTYPE srcType, const void *srcValue, PWP_UINT32 srcSize)
 Value transfer callback function signature. More...
 

Enumerations

enum  PWP_ENDIANNESS {
  PWP_ENDIAN_ERROR,
  PWP_ENDIAN_NATIVE,
  PWP_ENDIAN_FOREIGN,
  PWP_ENDIAN_LITTLE,
  PWP_ENDIAN_BIG
}
 Flags used to indicate endianness or control endian behaviors in functions. More...
 
enum  PWP_ENUM_DIMENSION {
  PWP_DIMENSION_2D,
  PWP_DIMENSION_3D
}
 Supported dimensionality values. More...
 
enum  PWP_ENUM_ENCODING {
  PWP_ENCODING_ASCII,
  PWP_ENCODING_BINARY,
  PWP_ENCODING_UNFORMATTED
}
 File encoding values. More...
 
enum  PWP_ENUM_FILEDEST {
  PWP_FILEDEST_FILENAME,
  PWP_FILEDEST_BASENAME,
  PWP_FILEDEST_FOLDER
}
 File destination types. More...
 
enum  PWP_ENUM_MSGID {
  PWP_MSGID_DEBUG,
  PWP_MSGID_INFO,
  PWP_MSGID_WARNING,
  PWP_MSGID_ERROR,
  PWP_MSGID_PROGBEGIN,
  PWP_MSGID_PROGEND,
  PWP_MSGID_PROGSTATUS,
  PWP_MSGID_PROGQUIT
}
 Supported PWP-API message ids. More...
 
enum  PWP_ENUM_PRECISION {
  PWP_PRECISION_SINGLE,
  PWP_PRECISION_DOUBLE
}
 File precision values. More...
 
enum  PWP_ENUM_VALTYPE {
  PWP_VALTYPE_STRING,
  PWP_VALTYPE_INT,
  PWP_VALTYPE_UINT,
  PWP_VALTYPE_REAL,
  PWP_VALTYPE_ENUM,
  PWP_VALTYPE_BOOL
}
 Supported PWP-API getValue() transfer types. More...
 

Functions

PWP_PROTOTYPE_DECL PWP_BOOL PwpActivateAPI (const char api[])
 Activates the plugin for a given API spec. More...
 
PWP_PROTOTYPE_DECL PWP_VOID PwpDestroy ()
 Called by framework just before plugin library is closed. More...
 
PWP_PROTOTYPE_DECL const char * PwpEnumAPIs (PWP_UINT32 ndx, PWP_APIINFO *pInfo)
 Enumerates the APIs supported by this plugin. More...
 
PWP_PROTOTYPE_DECL PWP_UINT32 PwpGetAPICount ()
 Get the number of APIs supported by this plugin. More...
 
PWP_PROTOTYPE_DECL PWP_MESSAGECB PwpGetMessageCallback (const char api[])
 Gets the current message callback. More...
 
PWP_PROTOTYPE_DECL PWP_VERSIONVAL PwpGetPluginInfo (PWP_PLUGININFO *pInfo)
 Get information about this plugin. More...
 
PWP_PROTOTYPE_DECL PWP_BOOL PwpGetValue (const char group[], const char key[], PWP_HVALUE value)
 Get the value for a grouped key. More...
 
PWP_PROTOTYPE_DECL PWP_BOOL PwpInitialize ()
 Initializes the plugin. More...
 
PWP_PROTOTYPE_DECL PWP_BOOL PwpIsLicensed (const char api[], const PWP_LICENSEDATA *pLicenseData)
 Determines if plugin api is licensed for use on this machine. More...
 
PWP_PROTOTYPE_DECL PWP_VOID PwpSetLanguage (const char language[])
 Sets the active language. More...
 
PWP_PROTOTYPE_DECL PWP_MESSAGECB PwpSetMessageCallback (const char api[], PWP_MESSAGECB msgCB)
 Sets the message callback function for the given api. More...
 

Detailed Description

Pointwise Plugin API (PWP-API)

This defines the minimum API required for all Pointwise plugins.

See also
PWP-API specification
CAEP-API specification

Definition in file apiPWP.h.