Unit CAPI_Utils

Classes, Interfaces, Objects and Records
Constants
Variables

Description

 

Uses

Overview

Functions and Procedures

procedure ctx_DSS_GetGRPointers( DSS: TDSSContext; var DataPtr_PPAnsiChar: PPPAnsiChar; var DataPtr_PDouble: PPDouble; var DataPtr_PInteger: PPInteger; var DataPtr_PByte: PPByte; var CountPtr_PPAnsiChar: PAPISize; var CountPtr_PDouble: PAPISize; var CountPtr_PInteger: PAPISize; var CountPtr_PByte: PAPISize ); CDECL;
procedure DSS_GetGRPointers( var DataPtr_PPAnsiChar: PPPAnsiChar; var DataPtr_PDouble: PPDouble; var DataPtr_PInteger: PPInteger; var DataPtr_PByte: PPByte; var CountPtr_PPAnsiChar: PAPISize; var CountPtr_PDouble: PAPISize; var CountPtr_PInteger: PAPISize; var CountPtr_PByte: PAPISize ); CDECL;
function ctx_DSS_GR_DataPtr_PDouble(DSS: TDSSContext): PDouble; CDECL;
function ctx_DSS_GR_DataPtr_PInteger(DSS: TDSSContext): PInteger; CDECL;
function ctx_DSS_GR_DataPtr_PByte(DSS: TDSSContext): PByte; CDECL;
function ctx_DSS_GR_CountPtr_PDouble(DSS: TDSSContext): PAPISize; CDECL;
function ctx_DSS_GR_CountPtr_PInteger(DSS: TDSSContext): PAPISize; CDECL;
function ctx_DSS_GR_CountPtr_PByte(DSS: TDSSContext): PAPISize; CDECL;
function DSS_GR_DataPtr_PDouble(): PDouble; CDECL;
function DSS_GR_DataPtr_PInteger(): PInteger; CDECL;
function DSS_GR_DataPtr_PByte(): PByte; CDECL;
function DSS_GR_CountPtr_PDouble(): PAPISize; CDECL;
function DSS_GR_CountPtr_PInteger(): PAPISize; CDECL;
function DSS_GR_CountPtr_PByte(): PAPISize; CDECL;
procedure ctx_DSS_DisposeGRData(DSS: TDSSContext); CDECL;
procedure DSS_DisposeGRData(); CDECL;
function DSS_GetAsPAnsiChar(DSS: TDSSContext; s: Ansistring): PAnsiChar;
procedure ctx_DSS_ResetStringBuffer(DSS: TDSSContext); CDECL;
procedure DSS_ResetStringBuffer(); CDECL;
function DSS_CopyStringAsPChar(s: Ansistring): PAnsiChar;
procedure DSS_Dispose_PByte(var p: PByte); CDECL;
procedure DSS_Dispose_PSingle(var p: PSingle); CDECL;
procedure DSS_Dispose_PDouble(var p: PDouble); CDECL;
procedure DSS_Dispose_PInteger(var p: PInteger); CDECL;
procedure DSS_Dispose_PPAnsiChar(var p: PPAnsiChar; cnt: TAPISize); CDECL;
procedure DSS_Dispose_PPointer(var p: PPointer); CDECL;
function DSS_CreateArray_PByte(var p: PByte; cnt: PAPISize; const incount: TAPISize): PByteArray;
function DSS_CreateArray_PSingle(var p: PSingle; cnt: PAPISize; const incount: TAPISize): PSingleArray0;
function DSS_CreateArray_PDouble(var p: PDouble; cnt: PAPISize; const incount: TAPISize): PDoubleArray0;
function DSS_CreateArray_PInteger(var p: PInteger; cnt: PAPISize; const incount: TAPISize): PIntegerArray0;
function DSS_CreateArray_PPAnsiChar(var p: PPAnsiChar; cnt: PAPISize; const incount: TAPISize): PPAnsiCharArray0;
function DSS_CreateArray_PPointer(var p: PPointer; cnt: PAPISize; const incount: TAPISize): PPointerArray0;
procedure DSS_RecreateArray_PByte(var res: PByteArray; var p: PByte; cnt: PAPISize; const incount: TAPISize);
procedure DSS_RecreateArray_PSingle(var res: PSingleArray0; var p: PSingle; cnt: PAPISize; const incount: TAPISize);
procedure DSS_RecreateArray_PDouble(var res: PDoubleArray0; var p: PDouble; cnt: PAPISize; const incount: TAPISize);
procedure DSS_RecreateArray_PInteger(var res: PIntegerArray0; var p: PInteger; cnt: PAPISize; const incount: TAPISize);
procedure DSS_RecreateArray_PPAnsiChar(var res: PPAnsiCharArray0; var p: PPAnsiChar; cnt: PAPISize; const incount: TAPISize);
procedure DSS_RecreateArray_PPointer(var res: PPointerArray0; var p: PPointer; cnt: PAPISize; const incount: TAPISize);
function DSS_RecreateArray_PByte(var p: PByte; cnt: PAPISize; const incount: TAPISize): PByteArray;
function DSS_RecreateArray_PSingle(var p: PSingle; cnt: PAPISize; const incount: TAPISize): PSingleArray0;
function DSS_RecreateArray_PDouble(var p: PDouble; cnt: PAPISize; const incount: TAPISize): PDoubleArray0;
function DSS_RecreateArray_PInteger(var p: PInteger; cnt: PAPISize; const incount: TAPISize): PIntegerArray0;
function DSS_RecreateArray_PPAnsiChar(var p: PPAnsiChar; cnt: PAPISize; const incount: TAPISize): PPAnsiCharArray0;
function DSS_RecreateArray_PPointer(var p: PPointer; cnt: PAPISize; const incount: TAPISize): PPointerArray0;
function DSS_Get_PAnsiChar(var p: Pointer; Index: TAPISize): PAnsiChar; CDECL;
procedure Generic_Get_AllNames(var ResultPtr: PPAnsiChar; ResultCount: PAPISize; pList: TDSSPointerList; const Restore: Boolean); inline;
function Generic_CktElement_Get_First(DSS: TDSSContext; pList: TDSSPointerList): Integer; inline;
function Generic_CktElement_Get_Next(DSS: TDSSContext; pList: TDSSPointerList): Integer; inline;
function InvalidCircuit(DSS: TDSSContext): Boolean; inline;
function MissingSolution(DSS: TDSSContext): Boolean; inline;
procedure DefaultResult(var ResultPtr: PByte; ResultCount: PAPISize; Value: Byte = 0); overload; inline;
procedure DefaultResult(var ResultPtr: PInteger; ResultCount: PAPISize; Value: Integer = 0); overload; inline;
procedure DefaultResult(var ResultPtr: PDouble; ResultCount: PAPISize; Value: Double = 0); overload; inline;
procedure DefaultResult(var ResultPtr: PSingle; ResultCount: PAPISize; Value: Single = 0); overload; inline;
procedure DefaultResult(var ResultPtr: PPAnsiChar; ResultCount: PAPISize; Value: String = 'NONE'); overload; inline;
function DSS_BeginPascalThread(func: Pointer; paramptr: Pointer): PtrUInt; CDECL;
procedure DSS_WaitPascalThread(handle: PtrUInt); CDECL;
procedure DSS_SetMessagesMO(Value: PChar); CDECL;
procedure DSS_SetPropertiesMO(Value: PChar); CDECL;
procedure DSS_InitThreads;

Types

TDSSContext = DSSClass.TDSSContext;

Description

Functions and Procedures

procedure ctx_DSS_GetGRPointers( DSS: TDSSContext; var DataPtr_PPAnsiChar: PPPAnsiChar; var DataPtr_PDouble: PPDouble; var DataPtr_PInteger: PPInteger; var DataPtr_PByte: PPByte; var CountPtr_PPAnsiChar: PAPISize; var CountPtr_PDouble: PAPISize; var CountPtr_PInteger: PAPISize; var CountPtr_PByte: PAPISize ); CDECL;
 
procedure DSS_GetGRPointers( var DataPtr_PPAnsiChar: PPPAnsiChar; var DataPtr_PDouble: PPDouble; var DataPtr_PInteger: PPInteger; var DataPtr_PByte: PPByte; var CountPtr_PPAnsiChar: PAPISize; var CountPtr_PDouble: PAPISize; var CountPtr_PInteger: PAPISize; var CountPtr_PByte: PAPISize ); CDECL;
 
function ctx_DSS_GR_DataPtr_PDouble(DSS: TDSSContext): PDouble; CDECL;

Separate simple functions for MATLAB, which return the current pointer directly, instead of a pointer to pointer.

function ctx_DSS_GR_DataPtr_PInteger(DSS: TDSSContext): PInteger; CDECL;
 
function ctx_DSS_GR_DataPtr_PByte(DSS: TDSSContext): PByte; CDECL;
 
function ctx_DSS_GR_CountPtr_PDouble(DSS: TDSSContext): PAPISize; CDECL;
 
function ctx_DSS_GR_CountPtr_PInteger(DSS: TDSSContext): PAPISize; CDECL;
 
function ctx_DSS_GR_CountPtr_PByte(DSS: TDSSContext): PAPISize; CDECL;
 
function DSS_GR_DataPtr_PDouble(): PDouble; CDECL;
 
function DSS_GR_DataPtr_PInteger(): PInteger; CDECL;
 
function DSS_GR_DataPtr_PByte(): PByte; CDECL;
 
function DSS_GR_CountPtr_PDouble(): PAPISize; CDECL;
 
function DSS_GR_CountPtr_PInteger(): PAPISize; CDECL;
 
function DSS_GR_CountPtr_PByte(): PAPISize; CDECL;
 
procedure ctx_DSS_DisposeGRData(DSS: TDSSContext); CDECL;
 
procedure DSS_DisposeGRData(); CDECL;
 
function DSS_GetAsPAnsiChar(DSS: TDSSContext; s: Ansistring): PAnsiChar;
 
procedure ctx_DSS_ResetStringBuffer(DSS: TDSSContext); CDECL;
 
procedure DSS_ResetStringBuffer(); CDECL;
 
function DSS_CopyStringAsPChar(s: Ansistring): PAnsiChar;
 
procedure DSS_Dispose_PByte(var p: PByte); CDECL;

TODO: check possible memory leaks for := DSS_CopyStringAsPChar('NONE')

procedure DSS_Dispose_PSingle(var p: PSingle); CDECL;
 
procedure DSS_Dispose_PDouble(var p: PDouble); CDECL;
 
procedure DSS_Dispose_PInteger(var p: PInteger); CDECL;
 
procedure DSS_Dispose_PPAnsiChar(var p: PPAnsiChar; cnt: TAPISize); CDECL;
 
procedure DSS_Dispose_PPointer(var p: PPointer); CDECL;
 
function DSS_CreateArray_PByte(var p: PByte; cnt: PAPISize; const incount: TAPISize): PByteArray;
 
function DSS_CreateArray_PSingle(var p: PSingle; cnt: PAPISize; const incount: TAPISize): PSingleArray0;
 
function DSS_CreateArray_PDouble(var p: PDouble; cnt: PAPISize; const incount: TAPISize): PDoubleArray0;
 
function DSS_CreateArray_PInteger(var p: PInteger; cnt: PAPISize; const incount: TAPISize): PIntegerArray0;
 
function DSS_CreateArray_PPAnsiChar(var p: PPAnsiChar; cnt: PAPISize; const incount: TAPISize): PPAnsiCharArray0;
 
function DSS_CreateArray_PPointer(var p: PPointer; cnt: PAPISize; const incount: TAPISize): PPointerArray0;
 
procedure DSS_RecreateArray_PByte(var res: PByteArray; var p: PByte; cnt: PAPISize; const incount: TAPISize);

NOTE: these do not copy to copy old values

procedure DSS_RecreateArray_PSingle(var res: PSingleArray0; var p: PSingle; cnt: PAPISize; const incount: TAPISize);
 
procedure DSS_RecreateArray_PDouble(var res: PDoubleArray0; var p: PDouble; cnt: PAPISize; const incount: TAPISize);
 
procedure DSS_RecreateArray_PInteger(var res: PIntegerArray0; var p: PInteger; cnt: PAPISize; const incount: TAPISize);
 
procedure DSS_RecreateArray_PPAnsiChar(var res: PPAnsiCharArray0; var p: PPAnsiChar; cnt: PAPISize; const incount: TAPISize);
 
procedure DSS_RecreateArray_PPointer(var res: PPointerArray0; var p: PPointer; cnt: PAPISize; const incount: TAPISize);
 
function DSS_RecreateArray_PByte(var p: PByte; cnt: PAPISize; const incount: TAPISize): PByteArray;
 
function DSS_RecreateArray_PSingle(var p: PSingle; cnt: PAPISize; const incount: TAPISize): PSingleArray0;
 
function DSS_RecreateArray_PDouble(var p: PDouble; cnt: PAPISize; const incount: TAPISize): PDoubleArray0;
 
function DSS_RecreateArray_PInteger(var p: PInteger; cnt: PAPISize; const incount: TAPISize): PIntegerArray0;
 
function DSS_RecreateArray_PPAnsiChar(var p: PPAnsiChar; cnt: PAPISize; const incount: TAPISize): PPAnsiCharArray0;
 
function DSS_RecreateArray_PPointer(var p: PPointer; cnt: PAPISize; const incount: TAPISize): PPointerArray0;
 
function DSS_Get_PAnsiChar(var p: Pointer; Index: TAPISize): PAnsiChar; CDECL;

MATLAB doesn't handle pointers that well, this just gets a single string from the pointer of strings

procedure Generic_Get_AllNames(var ResultPtr: PPAnsiChar; ResultCount: PAPISize; pList: TDSSPointerList; const Restore: Boolean); inline;
 
function Generic_CktElement_Get_First(DSS: TDSSContext; pList: TDSSPointerList): Integer; inline;
 
function Generic_CktElement_Get_Next(DSS: TDSSContext; pList: TDSSPointerList): Integer; inline;
 
function InvalidCircuit(DSS: TDSSContext): Boolean; inline;
 
function MissingSolution(DSS: TDSSContext): Boolean; inline;
 
procedure DefaultResult(var ResultPtr: PByte; ResultCount: PAPISize; Value: Byte = 0); overload; inline;
 
procedure DefaultResult(var ResultPtr: PInteger; ResultCount: PAPISize; Value: Integer = 0); overload; inline;
 
procedure DefaultResult(var ResultPtr: PDouble; ResultCount: PAPISize; Value: Double = 0); overload; inline;
 
procedure DefaultResult(var ResultPtr: PSingle; ResultCount: PAPISize; Value: Single = 0); overload; inline;
 
procedure DefaultResult(var ResultPtr: PPAnsiChar; ResultCount: PAPISize; Value: String = 'NONE'); overload; inline;
 
function DSS_BeginPascalThread(func: Pointer; paramptr: Pointer): PtrUInt; CDECL;
 
procedure DSS_WaitPascalThread(handle: PtrUInt); CDECL;
 
procedure DSS_SetMessagesMO(Value: PChar); CDECL;
 
procedure DSS_SetPropertiesMO(Value: PChar); CDECL;
 
procedure DSS_InitThreads;

internal function

Types

TDSSContext = DSSClass.TDSSContext;
 

Generated by PasDoc 0.16.0.