LabWindows/CVI Functions and Attributes Updated for 64-bit Applications
To ensure that your LabWindows/CVI projects compile as both 32- and 64-bit applications, various LabWindows/CVI functions and attributes were added or updated in LabWindows/CVI 2009. There are two types of changes made to LabWindows/CVI functions and attributes. The first type of change does not require a change in your source code. The second type of change might require you to update your source code.
Updates That Do Not Require Source Code Updates
The following updates should not cause errors or warnings in your source code. These updates include changing the data type of buffer size parameters from int or unsigned int to size_t to support large buffers and changing the data type of memory size parameters from unsigned int to size_t to support large memory allocation for functions that allocate memory.
Data types and functions in blue indicate updates or additions.
.NET Library Functions
typedef int (CVICALLBACK * CDotNetCallback)(CDotNetHandle delegate, void * parameters[], size_t numParameters, void * returnValue, void * callbackData, void * reserved);
int CVIFUNC CDotNetCreateInstance(CDotNetAssemblyHandle assembly, const char * name, void * instance, size_t numParameters, unsigned int parameterTypes[], void * parameters[], CDotNetHandle * exception);
int CVIFUNC CDotNetInvokeMember(CDotNetAssemblyHandle assembly, const char * typeName, CDotNetHandle instance, int invokeKind, const char * name, size_t numParameters, unsigned int parameterTypes[], void * parameters[], unsigned int returnType, void * returnValue, CDotNetHandle * exception);
int CVIFUNC CDotNetInvokeStaticMember(CDotNetAssemblyHandle assembly, const char * typeName, int invokeKind, const char * name, size_t numParameters, unsigned int parameterTypes[], void * parameters[], unsigned int returnType, void * returnValue, CDotNetHandle * exception);
int CVIFUNC CDotNetCreateGenericInstance(CDotNetAssemblyHandle assembly, const char * name, size_t numGenericTypes, const char * genericTypes[], void * instance, size_t numParameters, const char * parameterTypeNames[], unsigned int parameterTypes[], void * parameters[], CDotNetHandle * exception);
int CVIFUNC CDotNetInvokeGenericMember(CDotNetAssemblyHandle assembly, const char * typeName, CDotNetHandle instance, int invokeKind, const char * name, size_t numMemberGenericTypes, const char * memberGenericTypes[], size_t numParameters, const char * parameterTypeNames[], unsigned int parameterTypes[], void * parameters[], unsigned int * returnType, void * returnValue, CDotNetHandle * exception);
int CVIFUNC CDotNetInvokeGenericStaticMember(CDotNetAssemblyHandle assembly, const char * typeName, size_t numGenericTypes, const char * genericTypes[], int invokeKind, const char * name, size_t numMemberGenericTypes, const char * memberGenericTypes[], size_t numParameters, const char * parameterTypeNames[], unsigned int parameterTypes[], void * parameters[], unsigned int * returnType, void * returnValue, CDotNetHandle * exception);
int CVIFUNC CDotNetInvokeGenericInterfaceMember(CDotNetAssemblyHandle assembly, const char * typeName, size_t numGenericTypes, const char * genericTypes[], CDotNetHandle instance, int invokeKind, const char * name, size_t numMemberGenericTypes, const char * memberGenericTypes[], size_t numParameters, const char * parameterTypeNames[], unsigned int parameterTypes[], void *parameters[], unsigned int * returnType, void * returnValue, CDotNetHandle * exception);
int CVIFUNC CDotNetCreateDelegate(CDotNetAssemblyHandle assembly, const char * delegateName, size_t numGenericTypes, const char * genericTypes[], CDotNetCallback callbackFunction, void * callbackData, void * reserved, void * delegate, CDotNetHandle * exception);
void CVIFUNC CDotNetAllocateMemory(size_t size);
int CVIFUNC CDotNetCreateArray(unsigned int elementType, size_t numDimensions, ssize_t lowerBounds[], ssize_t lengths[], void * elements, CDotNetHandle * array);
int CVIFUNC CDotNetCreateTypedArray(CDotNetAssemblyHandle elementTypeAssembly, const char * elementTypeName, size_t numDimensions, ssize_t lowerBounds[], ssize_t lengths[], void * elements, CDotNetHandle * array);
int CVIFUNC CDotNetGetArrayLength(CDotNetHandle array, size_t dimension, ssize_t * length);
int CVIFUNC CDotNetGetArrayLowerBound(CDotNetHandle array, size_t dimension, ssize_t * lowerBound);
int CVIFUNC CDotNetSetArrayElements(CDotNetHandle array, unsigned int elementType, size_t numElements, void * elements);
int CVIFUNC CDotNetGetArrayElement(CDotNetHandle array, unsigned int elementType, size_t numDimensions, ssize_t indices[], void * element);
int CVIFUNC CDotNetSetArrayElement(CDotNetHandle array, unsigned int elementType, size_t numDimensions, ssize_t indices[], void * element);
int CVIFUNC CDotNetMakeClosedGenericTypeName(CDotNetAssemblyHandle assembly, const char * typeNameFmt, size_t numTypeArguments, const char * typeArguments[], char ** closedTypeName);
int CVIFUNC CDotNetGetDelegateParameterType(CDotNetHandle delegate, ssize_t parameterIndex, CDotNetAssemblyHandle * assembly, char ** typeName, unsigned int * typeId, int elementType);
int CVIFUNC CDotNetGetGenericTypeParameter(CDotNetHandle instance, const char * typeName, size_t index, char ** parameter);
ActiveX Library Functions
HRESULT CA_BSTRGetCStringBuf(BSTR bstr, char *stringBuf, size_t bufSize);
HRESULT CA_LoadObjectFromFileByClassIdEx(const char *fileName, const GUID *classId, const char *server, const IID *iid, int supportMultithreading, LCID locale, intptr_t reserved, CAObjHandle *objHandle);
HRESULT CA_LoadObjectFromFileByProgIdEx(const char *fileName, const char *progId, const char *server, const IID *iid, int supportMultithreading, LCID locale, intptr_t reserved, CAObjHandle *objHandle);
HRESULT CA_LoadObjectFromFileEx(const char *fileName, const char *server, const IID *iid, int supportMultithreading, LCID locale, intptr_t reserved, CAObjHandle *objHandle);
HRESULT CA_CreateObjHandleFromInterface(void *input, const IID *iid, int supportMultithreading, LCID locale, intptr_t reserved, int addRef, CAObjHandle *objHandle);
HRESULT CA_GetActiveObjectByClassIdEx(const GUID *classId, const char *server, const IID *iid, int supportMultithreading, LCID locale, intptr_t reserved, CAObjHandle *objHandle);
HRESULT CA_GetActiveObjectByProgIdEx(const char *progId, const char *server, const IID *iid, int supportMultithreading, LCID locale, intptr_t reserved, CAObjHandle *objHandle);
HRESULT CA_CreateObjectByClassIdEx(const GUID *classId, const char *server, const IID *iid, int supportMultithreading, LCID locale, intptr_t reserved, CAObjHandle *objHandle);
HRESULT CA_CreateObjectByProgIdEx(const char *progId, const char *server, const IID *iid, int supportMultithreading, LCID locale, intptr_t reserved, CAObjHandle *objHandle);
void *CA_AllocMemory(size_t numBytes);
void CA_GetAutomationErrorString(HRESULT error, char buf[], size_t bufSize);
HRESULT CA_VariantSet1DArray(VARIANT *v, unsigned int cavt, size_t numElements, const void *array);
HRESULT CA_VariantSet2DArray(VARIANT *v, unsigned int cavt, size_t dim1Size, size_t dim2Size, const void *array);
HRESULT CA_VariantGetCStringBuf(VARIANT *v, char *stringBuf, size_t bufSize);
HRESULT CA_Array1DToSafeArray(const void *array, unsigned int cavt, size_t numElements, LPSAFEARRAY *ppSafeArray);
HRESULT CA_Array2DToSafeArray(const void *array, unsigned int cavt, size_t dim1Size, size_t dim2Size, LPSAFEARRAY *ppSafeArray);
HRESULT CA_MethodInvoke(CAObjHandle objHandle, ERRORINFO *exceptInfo, int methodId, unsigned int returnType, void *retval, size_t paramCount, unsigned int paramTypes[], ...);
HRESULT CA_MethodInvokeV(CAObjHandle objHandle, ERRORINFO *exceptInfo, int methodId, unsigned int returnType, void *retval, size_t paramCount, unsigned int paramTypes[], va_list args);
HRESULT CA_InvokeHelperV(CAObjHandle objHandle, ERRORINFO *exceptInfo, int methodOrPropId, int mode, unsigned int returnType, void *retval, size_t paramCount, unsigned int paramTypes[], va_list args);
HRESULT CA_InvokeHelper(CAObjHandle objHandle, ERRORINFO *exceptInfo, int methodOrPropId, int mode, unsigned int returnType, void *retval, size_t paramCount, unsigned int paramTypes[], ...);
HRESULT CA_MethodInvokeEx(CAObjHandle objHandle, ERRORINFO *exceptInfo, const IID *pIID, int methodId, unsigned int returnType, void *retval, size_t paramCount, unsigned int paramTypes[], ...);
HRESULT CA_MethodInvokeVEx(CAObjHandle objHandle, ERRORINFO *exceptInfo, const IID *pIID, int methodId, unsigned int returnType, void *retval, size_t paramCount, unsigned int paramTypes[], va_list args);
HRESULT CA_InvokeHelperVEx(CAObjHandle objHandle, ERRORINFO *exceptInfo, const IID *pIID, int methodOrPropId, int mode, unsigned int returnType, void *retval, size_t paramCount, unsigned int paramTypes[], va_list args);
HRESULT CA_InvokeHelperEx(CAObjHandle objHandle, ERRORINFO *exceptInfo, const IID *pIID, int methodOrPropId, int mode, unsigned int returnType, void *retval, size_t paramCount, unsigned int paramTypes[], ...);
HRESULT CA_InitActiveXServer(HINSTANCE serverHInstance, ServerModuleType moduleType, const char *cmdLine, CAServerModuleDesc *serverModuleDesc, int *runServer, char *errStrBuf, size_t bufSize);
HRESULT CA_VariantGet1DArrayBuf(VARIANT *v, unsigned int cavt, void *buf, size_t bufSizeInBytes, size_t *numElements);
HRESULT CA_VariantGet2DArrayBuf(VARIANT *v, unsigned int cavt, void *buf, size_t bufSizeInBytes, size_t *dim1NumElements, size_t *dim2NumElements);
HRESULT CA_SafeArrayTo1DArrayBuf(LPSAFEARRAY *ppSafeArray, unsigned int cavt, void *buf, size_t bufSizeInBytes, size_t *numElements);
HRESULT CA_SafeArrayTo2DArrayBuf(LPSAFEARRAY *ppSafeArray, unsigned int cavt, void *buf, size_t bufSizeInBytes, size_t *dim1NumElements, size_t *dim2NumElements);
HRESULT CA_SafeArrayTo1DArrayBufEx(LPSAFEARRAY *ppSafeArray, unsigned int cavt, unsigned int options,void *buf, size_t bufSizeInBytes, size_t *numElements);
HRESULT CA_SafeArrayTo2DArrayBufEx(LPSAFEARRAY *ppSafeArray, unsigned int cavt, unsigned int options,void *buf, size_t bufSizeInBytes, size_t *dim1NumElements, size_t *dim2NumElements);
Advanced Analysis Library Functions
int Abs1D(double x[], ssize_t n, double y[]);
int ACDCEstimator(const double x[], ssize_t n, double *acestimate, double *dcestimate);
int Add1D(double x[], double y[], ssize_t n,double z[]);
int Add2D(double *x, double *y, ssize_t n, ssize_t m,double *z);
int AmpPhaseSpectrum(const double x[], ssize_t n, int unwrap, double dt, double ampspectrum[], double phasespectrum[], double *df);
int ANOVA1Way(const double y[], const ssize_t level[], ssize_t n, ssize_t k, double *ssa, double *msa, double *f, double *sig, double *sse, double *mse, double *tss);
int ANOVA2Way(const double y[], const ssize_t levelA[], const ssize_t levelB[], ssize_t N, ssize_t L, ssize_t a, ssize_t b, double info[4][4], double *sigA, double *sigB, double *sigAB);
int ANOVA3Way(const double y[], const ssize_t levelA[], const ssize_t levelB[], const ssize_t levelC[], ssize_t N, ssize_t L, ssize_t a, ssize_t b, ssize_t c, double info[8][4], double *sigA, double *sigB, double *sigC, double *sigAB, double *sigAC, double *sigBC, double *sigABC);
int ArbitraryWave(ssize_t n, double amp, double f, double *phase, const double wavetable[], ssize_t wavesize, int wavetype, double x[]);
int AutoPowerSpectrum(const double x[], ssize_t n, double dt, double autospectrum[], double *df);
int BackSub(const double *a, double y[], ssize_t n, double x[]);
int BartHannWin(double x[], ssize_t n);
int BkmanWin(double x[], ssize_t n);
int BlkHarrisWin(double x[], ssize_t n);
int BlkmanNuttallWin(double x[], ssize_t nx);
int BohmanWin(double x[], ssize_t n);
int Bw_BPF(double x[], ssize_t n, double fs, double fl, double fh, int order, double y[]);
int Bw_BSF(double x[], ssize_t n, double fs, double fl, double fh, int order, double y[]);
int Bw_HPF(double x[], ssize_t n, double fs, double fc, int order, double y[]);
int Bw_LPF(double x[], ssize_t n, double fs, double fc, int order, double y[]);
int Ch_BPF(double x[], ssize_t n, double fs, double fl, double fh, double ripple, int order, double y[]);
int Ch_BSF(double x[], ssize_t n, double fs, double fl, double fh, double ripple, int order, double y[]);
int Ch_HPF(double x[], ssize_t n, double fs, double fc, double ripple, int order, double y[]);
int Ch_LPF(double x[], ssize_t n, double fs, double fc, double ripple, int order, double y[]);
int ChebWin(double *x, ssize_t nx,double s);
int CheckPosDef(double *a, ssize_t n, int *positiveDefinite);
int Chirp(ssize_t n, double amp, double f1, double f2, double x[]);
int ChirpZT(const double *x, ssize_t n, complexnum startPnt, complexnum increment,int algorithm, ssize_t numberOfBins, complexnum *y);
int Cholesky(double *a, ssize_t n, double *r);
int Clear1D(double x[], ssize_t n);
int Clip(double x[], ssize_t n, double upper, double lower, double y[]);
int ConditionNumber(double *a, ssize_t n, ssize_t m, int normType, double *c);
int Convolve(const double x[], ssize_t n, const double y[], ssize_t m, double cxy[]);
int ConvolveEx(const double x[], ssize_t n, const double y[], ssize_t m, int algorithm, double cxy[]);
int Copy1D(const double x[], ssize_t n, double y[]);
int Correlate(const double x[], ssize_t n, const double y[], ssize_t m, double rxy[]);
int CorrelateEx(const double x[], ssize_t n, const double y[], ssize_t m, int algorithm, double rxy[]);
int CosTaperedWin(double x[], ssize_t n);
int CosTaperedWinEx(double *x, ssize_t nx, double r);
int CrossPowerSpectrum(const double x[], const double y[], ssize_t n, double dt, double magsxy[], double phasesxy[], double *df);
int CrossSpectrum(const double x[], const double y[], ssize_t n, double zr[], double zi[]);
int CubicSplineFit(const double *x, double *y, const double *weight, ssize_t n, double balance, const double *smoothness, double *fittedData);
int CxAdd1D(double xr[], double xi[],double yr[], double yi[], ssize_t n, double zr[], double zi[]);
int CxCheckPosDef(complexnum *a, ssize_t n, int *positiveDefinite);
int CxChirpZT(const complexnum *x, ssize_t n, complexnum startPnt, complexnum increment, int algorithm, ssize_t numberOfBins, complexnum *y);
int CxCholesky(complexnum *a, ssize_t n, complexnum *r);
int CxConditionNumber(complexnum *a, ssize_t n, ssize_t m, int normType, double *c);
int CxDecimate(const complexnum x[], ssize_t n, ssize_t D, int avg, complexnum *y);
int CxDeterminant(complexnum *a, ssize_t n, int matrixType, ComplexNum *det);
int CxDiv1D(double xr[], double xi[],double yr[], double yi[], ssize_t n, double zr[], double zi[]);
int CxDotProduct(const ComplexNum x[], const ComplexNum y[], ssize_t n, ComplexNum *dotProd);
int CxEigenValueVector(complexnum *a, ssize_t n, int matrixType, int outputChoice, ComplexNum eigenValues[], complexnum *eigenVectors);
int CxEigenVBack(complexnum *inV, ssize_t n, int side, int how, ssize_t ilo, ssize_t ihi, const double *scale, complexnum *outV);
int CxFFT2D(const complexnum *A, ssize_t rowA, ssize_t colA, ssize_t rowFT, ssize_t colFT, int shift, complexnum *B);
int CxFFTEx(const complexnum *tmSig, ssize_t nTmsig, ssize_t fftSize, PFFTTable fftTable, int shift, complexnum *fft);
int CxGenEigenAB(const complexnum* A, const complexnum* B, ssize_t n, complexnum *eigenval, complexnum* leftVec, complexnum *rightVec);
int CxGenInvMatrix(complexnum *a, ssize_t n, int matrixType, complexnum *mi);
int CxGenLinEqs(complexnum *a, ssize_t n, ssize_t m, const ComplexNum y[], int matrixType, ComplexNum x[]);
int CxHess(complexnum* A, ssize_t nA, complexnum* H, complexnum* Q);
int CxInvFFT2D(const complexnum *A, ssize_t rowA, ssize_t colA, int shifted, complexnum *B);
int CxInvFFTEx(const complexnum *fft, ssize_t fftSize, PFFTTable fftTable, int shifted, complexnum* tmSig);
int CxKroneckerProd(const complexnum *x, const complexnum *y, ssize_t n, ssize_t m, ssize_t k, ssize_t l, complexnum *KronProd);
int CxLinEv1D(double xr[], double xi[], ssize_t n, double ar, double ai, double br, double bi, double yr[], double yi[]);
int CxLU(complexnum *a, ssize_t n, ssize_t p[], int *sign);
int CxMatrixBalance(complexnum *A, ssize_t nA, int how, ssize_t *ilo, ssize_t *ihi, double *scale, complexnum *B);
int CxMatrixMul(const complexnum *x, const complexnum *y, ssize_t n, ssize_t k, ssize_t m, complexnum *z);
int CxMatrixNorm(complexnum *a, ssize_t n, ssize_t m, int normType, double *norm);
int CxMatrixRank(complexnum *a, ssize_t n, ssize_t m, double tolerance, ssize_t *rank);
int CxMatrixVectorMul(const complexnum *A, const complexnum *x, ssize_t n, ssize_t m, complexnum *y);
int CxMul1D(double xr[], double xi[],double yr[], double yi[], ssize_t n, double zr[], double zi[]);
int CxOuterProduct(const ComplexNum x[], ssize_t nx, const ComplexNum y[], ssize_t ny, complexnum *outerProduct);
int CxPseudoInverse(complexnum *a, ssize_t n, ssize_t m, double tolerance, complexnum *mpi);
int CxQR(complexnum *a, ssize_t n, ssize_t m, complexnum *q, complexnum *r);
int CxQREx(complexnum *A, ssize_t rowA, ssize_t colA, int pvt, int sizeOption, ssize_t *pvtInfo, complexnum *Q, complexnum *R);
int CxQZ(const complexnum *A, const complexnum *B, ssize_t n, int order, complexnum *AA, complexnum *BB, complexnum *Q, complexnum *Z, complexnum *alpha, complexnum *beta, complexnum *leftVec, complexnum *rightVec);
int CxRMS(const complexnum *x, ssize_t n, double *rms);
int CxSchur(const complexnum *A, ssize_t nA, int order, complexnum *Q, complexnum *S, complexnum *eigenval);
int CxSolveEqs(const complexnum *A, ssize_t rowA, ssize_t colA, int typeA, complexnum* B, ssize_t colB, complexnum* X);
int CxSpecialMatrix(int matrixType, ssize_t m, const ComplexNum x[], ssize_t nx, const ComplexNum y[], ssize_t ny, complexnum *z);
int CxSub1D(double xr[], double xi[],double yr[], double yi[], ssize_t n, double zr[], double zi[]);
int CxSVD(complexnum *a, ssize_t n, ssize_t m, complexnum *u, ComplexNum s[], complexnum *v);
int CxSVDEx(const complexnum *A, ssize_t rowA, ssize_t colA, int sizeOption,complexnum *U, double* s, complexnum *V);
int CxSVDS(complexnum *a, ssize_t n, ssize_t m, ComplexNum s[]);
int CxTrace(const complexnum *a, ssize_t n, int reserved, complexnum *trace);
int CxTranspose(const complexnum *a, ssize_t n, ssize_t m, complexnum *b);
int CycleRMSAverage(double *x, ssize_t n, ssize_t cycleNum, double highRef, double midRef, double lowRef, int refUnits, int percentMethod, ssize_t histoSize, double *cycleAvg, double *cycleRMS, double *startingTime, double *endingTime, double *lowRefVal, double *midRefVal, double *highRefVal);
int DCT(const double *x, ssize_t n, ssize_t DCTSize, double *y);
int DCT2D(const double *x, ssize_t rows, ssize_t cols, double *y);
int Decimate(const double x[], ssize_t n, ssize_t D, int avg, double *y);
int Deconvolve(const double y[], ssize_t ny, const double x[], ssize_t nx, double h[]);
int Determinant(const double *x, ssize_t n, double *det);
int Difference(double x[], ssize_t n, double dt, double xInit, double xFinal, double y[]);
int DifferenceEx(double* x, ssize_t n, double dt, const double* xInit, ssize_t xInit_size,const double* xFinal, ssize_t xFinal_size,int diffMethod, double* y);
int Div1D(double x[], double y[], ssize_t n,double z[]);
int Div2D(double *x, double *y, ssize_t n, ssize_t m,double *z);
int DotProduct(const double x[], const double y[], ssize_t n, double *dotProd);
int DST(const double *x, ssize_t n, ssize_t DSTSize, double *y);
int DST2D(const double *x, ssize_t rows, ssize_t cols, double *y);
int EigenVBack(double *inV, ssize_t n, int side, int how, ssize_t ilo, ssize_t ihi, const double *scale, double *outV);
int Elp_BPF(double x[], ssize_t n, double fs, double fl, double fh, double ripple, double atten, int order, double y[]);
int Elp_BSF(double x[], ssize_t n, double fs, double fl, double fh, double ripple, double atten, int order, double y[]);
int Elp_HPF(double x[], ssize_t n, double fs, double fc, double ripple, double atten, int order, double y[]);
int Elp_LPF(double x[], ssize_t n, double fs, double fc, double ripple, double atten, int order, double y[]);
int ExBkmanWin(double x[], ssize_t n);
int ExpFit(double x[], double y[], ssize_t n, double z[], double *a, double *b, double *mse);
int ExpFitEx(const double *x, double *y, const double *weight, ssize_t n, int fitMethod, double tolerance, double *fittedData, double *amplitude, double *damping, double *residue);
int ExpFitInterval(const double *x, const double *y, const double *weight, ssize_t n, int intervalType, double confidenceLevel, double amplitude, double damping, double *upperBound, double *lowerBound, double *deltaAmp, double *deltaDamp);
int ExpWin(double x[], ssize_t n, double final);
int FastHilbertTransform(double x[], ssize_t n);
int FFT(double x[], double y[], ssize_t n);
int FFT2D(const double *A, ssize_t rowA, ssize_t colA, ssize_t rowFT, ssize_t colFT, int shift, complexnum *B);
int FFTEx(const double *tmSig, ssize_t nTmsig, ssize_t fftSize, PFFTTable fftTable, int shift, complexnum *fft);
int FHT(double x[], ssize_t n);
int FIRFiltering(const double x[], ssize_t n, const double b[], double x1[], int nb, double y[]);
int FIRFiltering_CxInput(const complexnum x[], ssize_t n, const double b[], complexnum x1[], int nb, complexnum y[]);
int FlatTopWin(double x[], ssize_t n);
int ForceWin(double x[], ssize_t n, double duty);
int ForwSub(const double *a, const double y[], ssize_t n, double x[], const ssize_t p[]);
int GaussFit(const double *x, double *y, const double *weight, ssize_t n, int fitMethod, double tolerance, double *initCoef, double *fittedData, double *amplitude, double *center, double *stdDev, double *residue);
int GaussFitInterval(const double *x, const double *y, const double *weight, ssize_t n, int intervalType, double confidenceLevel, double amplitude, double center, double stdDev, double *upperBound, double *lowerBound, double *deltaAmp, double *deltaCnt, double *deltaDev);
int GaussModSinePattern(ssize_t n, double amp, double delay, double dt, double fc, double bandwidth, double attenuation, double x[]);
int GaussMonopulse(ssize_t n, double amp, double delay, double dt, double fc,double x[]);
int GaussNoise(ssize_t n, double sDev, int seed, double noise[]);
int GaussWin(double *x, ssize_t nx,double dev);
int GenCosWin(double x[], ssize_t n, const double a[], int m);
int GenDeterminant(double *a, ssize_t n, int type, double *determinant);
int GenEigenAB(const double* A, const double* B, ssize_t n, complexnum *eigenval, complexnum* leftVec,complexnum *rightVec);
int GenEigenValueVector(double *a, ssize_t n, int outputChoice, ComplexNum eigenValues[], complexnum *eigenVectors);
int GenInvMatrix(double *a, ssize_t n, int type, double *mi);
int GenLinEqs(double *a, ssize_t n, ssize_t m, const double y[], int type, double x[]);
int GenLSFit(const double *H, ssize_t row, ssize_t col, const double y[], const double stddev[], int algorithm, double z[], double coef[], double *covar, double *mse);
int GenLSFitCoef(const double *H, ssize_t row, ssize_t col, const double y[], double coef[], int algorithm);
int GoodnessOfFit(const double *y, const double *fittedData, const double *weight, ssize_t n, ssize_t degOfFree, double *SSE, double *rSquare, double *RMSE);
int HamWin(double x[], ssize_t n);
int HanWin(double x[], ssize_t n);
int HarmonicAnalyzer(const double *x, ssize_t n, ssize_t frame_size, int number_of_harmonics, int window_type, double sampling_rate, double fundamental_frequency, double harmonic_amplitudes[], double harmonic_frequencies[], double *thd, double *thdnoise);
int HarmonicAnalyzerUsingSignal(const double *x, ssize_t size_of_x, int number_of_harmonics, double sampling_rate, double fundamental_frequency, double *harmonic_amplitudes, double *harmonic_frequencies, double *thd, double *thdnoise);
int Hess(double* A, ssize_t nA, double* H, double* Q);
int Histogram(const double x[], ssize_t n, double xBase, double xTop, ssize_t hist[], double Axis[], ssize_t intervals);
int IIRCascadeFiltering(const double x[], ssize_t n, IIRFilterPtr filterInfo, double y[]);
int IIRFiltering(const double x[], ssize_t n, const double a[], double y1[], int na, const double b[], double x1[], int nb, double y[]);
int IIRFiltering_CxInput(const complexnum x[], ssize_t n, const double a[], complexnum y1[], int na, const double b[], complexnum x1[], int nb, complexnum y[]);
int Impulse(ssize_t n, double amp, ssize_t index, double* x);
int ImpulseResponse(const double stimulus[], const double response[], ssize_t n, double impulse[]);
int Integrate(double x[], ssize_t n, double dt, double xInit, double xFinal, double y[]);
int InvCh_BPF(double x[], ssize_t n, double fs, double fl, double fh, double atten, int order, double y[]);
int InvCh_BSF(double x[], ssize_t n, double fs, double fl, double fh, double atten, int order, double y[]);
int InvCh_HPF(double x[], ssize_t n, double fs, double fc, double atten, int order, double y[]);
int InvCh_LPF(double x[], ssize_t n, double fs, double fc, double atten, int order, double y[]);
int InvChirpZT(const complexnum *x, ssize_t m, complexnum startPnt, complexnum increment,complexnum *y, ssize_t n);
int InvDCT(const double *y, ssize_t n, double *x);
int InvDCT2D(const double *y, ssize_t rows, ssize_t cols, double *x);
int InvDST(const double *y, ssize_t n, double *x);
int InvDST2D(const double *y, ssize_t rows, ssize_t cols, double *x);
int InvFastHilbertTransform(double x[], ssize_t n);
int InvFFT(double x[], double y[], ssize_t n);
int InvFFT2D(const complexnum *A, ssize_t rowA, ssize_t colA, int shifted, double *B);
int InvFFTEx(const complexnum *fft, ssize_t fftSize, PFFTTable fftTable, int shifted, double* tmSig);
int InvFHT(double x[], ssize_t n);
int InvMatrix(double *x, ssize_t n, double *y);
int KroneckerProd(const double *x, const double *y, ssize_t n, ssize_t m, ssize_t k, ssize_t l, double *KronProd);
int KsrWin(double x[], ssize_t n, double beta);
int LinearFitEx(const double *x, double *y, const double *weight, ssize_t n, int fitMethod, double tolerance, double *fittedData, double *slope, double *intercept, double *residue);
int LinearFitInterval(const double *x, const double *y, const double *weight, ssize_t n, int intervalType, double confidenceLevel, double slope, double intercept, double *upperBound, double *lowerBound, double *deltaSlope, double *deltaIntcpt);
int LinEqs(const double *A, const double y[], ssize_t n, double x[]);
int LinEv1D(double x[], ssize_t n, double a,double b, double y[]);
int LinEv2D(double *x, ssize_t n, ssize_t m, double a, double b, double *y);
int LinFit(double x[], double y[], ssize_t n, double z[], double *slope, double *intercept, double *mse);
int LogFit(const double *x, double *y, const double *weight, ssize_t n, double logBase, int fitMethod, double tolerance, double *fittedData, double *amplitude, double *scale, double *residue);
int LogFitInterval(const double *x, const double *y, const double *weight, ssize_t n, double logBase, int intervalType, double confidenceLevel, double amplitude, double scale, double *upperBound, double *lowerBound, double *deltaAmp, double *deltaScl);
int LU(double *a, ssize_t n, ssize_t p[], int *sign);
int MatrixBalance(double *A, ssize_t nA, int how, ssize_t *ilo, ssize_t *ihi, double *scale, double *B);
int MatrixMul(const double *x, const double *y, ssize_t n, ssize_t k, ssize_t m, double *z);
int MatrixNorm(double *a, ssize_t n, ssize_t m, int normType, double *norm);
int MatrixRank(double *a, ssize_t n, ssize_t m, double tolerance, ssize_t *rank);
int MatrixVectorMul(const double *A, const double *x, ssize_t n, ssize_t m, double *y);
int MaxMin1D(const double x[], ssize_t n, double *max, ssize_t *imax, double *min, ssize_t *imin);
int MaxMin2D(const double *x, ssize_t n, ssize_t m, double *max, ssize_t *imax, ssize_t *jmax, double *min, ssize_t *imin, ssize_t *jmin);
int Mean(const double x[], ssize_t n, double *mean);
int Median(const double x[], ssize_t n, double *median);
int Mode(const double x[], ssize_t n, double xBase, double xTop, ssize_t intervals, double *mode);
int ModeEx(const double *x, ssize_t n, ssize_t intervals, double *modes, ssize_t *nModes);
int Moment(const double x[], ssize_t n, int order, double *moment);
int Mul1D(double x[], double y[], ssize_t n,double z[]);
int Mul2D(double *x, double *y, ssize_t n, ssize_t m,double *z);
int Neg1D(double x[], ssize_t n, double y[]);
int NetworkFunctions(double *stimulus, double *response, ssize_t n, ssize_t numframes, double dt, double magsxy[], double phasesxy[], double magtransfer[], double phasetransfer[], double coherence[], double impulse[], double *df);
int NonLinearFit(const double x[], const double y[], double z[], ssize_t n, ModelFun *func, double coef[], int m, double *mse);
int NonLinearFitWithMaxIters(const double x[], const double y[], double z[], ssize_t n, int maxiters, ModelFun *func, double coef[], int m, double *mse);
int Normal1D(double x[], ssize_t n, double y[],double *ave, double *sDev);
int Normal2D(double *x, ssize_t n, ssize_t m, double *y, double *ave, double *sDev);
int NumericIntegration(const double x[], ssize_t n, double dt, int integrationMethod, double *ir);
int OuterProduct(const double vectorX[], ssize_t nx, const double vectorY[], ssize_t ny, double *z);
int ParzenWin(double x[], ssize_t n);
int PeakDetector(const double x[], ssize_t n, double threshold, ssize_t width, int polarity, int initialize, int endOfData, ssize_t *count, double **pL, double **pA, double **pSD);
int PeriodicSinc(ssize_t n, double amp, double delay, double dt, int N, double x[]);
int PolyEv1D(double x[], ssize_t n,const double coef[], int k, double y[]);
int PolyEv2D(double *x, ssize_t n, ssize_t m, const double coef[],int k, double *y);
int PolyFit(double x[], const double y[], ssize_t n, int order, double z[], double coef[], double *mse);
int PolyFitEx(double *x, const double *y, ssize_t n, int order, const int *specOrder, const double *specCoef, int nSpec, int algorithm, double *fittedData, double *coef, double *mse);
int PolyFitWithWeight(double *x, const double *y, const double *weight, ssize_t n, int order, const int *specOrder, const double *specCoef, int nSpec, int algorithm, double *fittedData, double *coef, double *mse);
int PolyInterp(const double x[], const double y[], ssize_t n, double x_val, double *Interp_Val, double *Error);
int PowerFit(const double *x, double *y, const double *weight, ssize_t n, int fitMethod, double tolerance, double *fittedData, double *amplitude, double *power, double *residue);
int PowerFitInterval(const double *x, const double *y, const double *weight, ssize_t n, int intervalType, double confidenceLevel, double amplitude, double power, double *upperBound, double *lowerBound, double *deltaAmp, double *deltaPow);
int PowerFrequencyEstimate(const double autospectrum[], ssize_t n, double searchfreq, WindowConst windowconstants, double df, ssize_t span, double *freqpeak, double *powerpeak);
int Prod1D(const double x[], ssize_t n, double * prod);
int PseudoInverse(double *a, ssize_t n, ssize_t m, double tolerance, double *mpi);
int Pulse(ssize_t n, double amp, ssize_t delay, ssize_t width, double pulsePattern[]);
int PulseMeas(double *x, ssize_t n, int polarity, ssize_t pulseNum,double highRef, double midRef, double lowRef, int refUnits,int percentMethod, ssize_t histoSize, double *period, double *pulseDuration, double *dutyCycle, double *pulseCenter,double *lowRefVal,double *midRefVal,double *highRefVal);
int PulseParam(const double pulsePattern[], ssize_t n, double *amp, double *amp90, double *amp50, double *amp10, double *top, double *base, double *topOvershoot, double *baseOvershoot, ssize_t *delay, ssize_t *width, ssize_t *riseTime, ssize_t *fallTime, double *slewRate);
int QR(double *a, ssize_t n, ssize_t m, int algorithm, double *q, double *r);
int QREx(double *A, ssize_t rowA, ssize_t colA, int pvt, int sizeOption, ssize_t *pvtInfo, double *Q, double *R);
int QScale1D(double x[], ssize_t n, double y[],double *scale);
int QScale2D(double *x, ssize_t n, ssize_t m, double *y, double *scale);
int QZ(const double *A, const double *B, ssize_t n, int order, double *AA, double *BB, double *Q, double *Z, complexnum *alpha, double *beta, complexnum *leftVec, complexnum *rightVec);
int Ramp(ssize_t n, double first, double last, double rampvals[]);
int RatInterp(const double x[], const double y[], ssize_t n, double x_val, double *Interp_Val, double *Error);
int ReFFT(double x[], double y[], ssize_t n);
int ReInvFFT(double x[], double y[], ssize_t n);
int RemoveOutlierByIndex(double *x, double *y, double *weight, ssize_t *n, const ssize_t *index, ssize_t nIndex);
int RemoveOutlierByRange(double *x, double *y, double *weight, ssize_t *n, int rangeType, const double *range, int nRange, ssize_t *outlierIndex, ssize_t *nOutlier);
int Reverse(double x[], ssize_t n, double y[]);
int RMS(const double x[], ssize_t n, double *rms);
int SavitzkyGolayFiltering(double x[], ssize_t nx, int polyOrder, int nSidePoints, double weight[], double y[]);
int SavitzkyGolayFiltering_CxInput(complexnum x[], ssize_t nx, int polyOrder, int nSidePoints, double weight[], complexnum y[]);
int SawtoothWave(ssize_t n, double amp, double f, double *phase, double x[]);
int Scale1D(double x[], ssize_t n, double y[],double *offset, double *scale);
int Scale2D(double *x, ssize_t n, ssize_t m, double *y, double *offset, double *scale);
int ScaledWindow(double x[], ssize_t n, int window, WindowConst *windowconstants);
int ScaledWindowEx(double *x, ssize_t n, int winType, double para, WindowConst *windowconstants);
int Schur(const double *A, ssize_t nA, int order, double *Q, double *S, complexnum *eigenval);
int Set1D(double x[], ssize_t n, double a);
int Shift(double x[], ssize_t n, ssize_t shifts, double y[]);
int Sinc(ssize_t n, double amp, double delay, double dt, double x[]);
int SinePattern(ssize_t n, double amp, double phase, double cycles, double sine[]);
int SineWave(ssize_t n, double amp, double f, double *phase, double x[]);
int SolveEqs(const double *A, ssize_t rowA, ssize_t colA, int typeA, double* B, ssize_t colB, double* X);
int Sort(double x[], ssize_t n, int direction, double y[]);
int SpecialMatrix(int type, ssize_t m, const double x[], ssize_t nx, const double y[], ssize_t ny, double *z);
int Spectrum(double x[], ssize_t n);
int SpectrumUnitConversion(const double spectrum[], ssize_t ns, int type, int loglin, int unitselector, double df, WindowConst windowconstants, double convertedspectrum[], char *unitstring);
int SpInterp(const double x[], const double y[], const double y2[], ssize_t n, double x_val, double *Interp_Val);
int Spline(const double x[], const double y[], ssize_t n, double b1, double b2, double y2[]);
int SquareWave(ssize_t n, double amp, double f, double *phase, double duty, double x[]);
int StateLevels(double *x, ssize_t n, int method, ssize_t histoSize, double *high, double *low, double *amp);
int StdDev(const double x[], ssize_t n, double *mean, double *sDev);
int Sub1D(double x[], double y[], ssize_t n,double z[]);
int Sub2D(double *x, double *y, ssize_t n, ssize_t m,double *z);
int Subset1D(const double x[], ssize_t n, ssize_t index, ssize_t length, double y[]);
int Sum1D(const double x[], ssize_t n, double * sum);
int Sum2D(const double *x, ssize_t n, ssize_t m, double *sum);
int SVD(double *a, ssize_t n, ssize_t m, double *u, double s[], double *v);
int SVDEx(const double *A, ssize_t rowA, ssize_t colA, int sizeOption, double *U, double* s, double *V);
int SVDS(double *a, ssize_t n, ssize_t m, double s[]);
int SymEigenValueVector(double *a, ssize_t n, int outputChoice, double eigenValues[], double *eigenVectors);
int SymWin(double *x, ssize_t nx, int winType, double para);
int ThresholdPeakDetector(const double *x, ssize_t n, double threshold, ssize_t width, ssize_t *peakIdx, ssize_t *count);
int ToPolar1D(double x[], double y[], ssize_t n, double mag[], double phase[]);
int ToRect1D(double mag[], double phase[], ssize_t n, double x[], double y[]);
int Trace(const double *x, ssize_t n, double *traceval);
int TransferFunction(const double stimulus[], const double response[], ssize_t n, double dt, double magtransfer[], double phasetransfer[], double *df);
int TransMeas(double *x, ssize_t n, int polarity, ssize_t edgeNum, double highRef, double midRef, double lowRef, int refUnits, int percentMethod, ssize_t histoSize, double *slope, double *transDuration, double *startingTime, double *endingTime, double *lowRefVal, double *midRefVal, double *highRefVal, double *PreUnderShoot, double *PreOverShoot, double *PostUnderShoot, double *PostOverShoot);
int Transpose(const double *x, ssize_t n, ssize_t m, double *y);
int Triangle(ssize_t n, double amp, double tri[]);
int TriangleWave(ssize_t n, double amp, double f, double *phase, double x[]);
int TriWin(double x[], ssize_t n);
int Uniform(ssize_t n, int seed, double x[]);
int UnsymmetricTriangle(ssize_t n, double amp, double delay, double dt, double width, double asy, double x[]);
int UnWrap1D(double phase[], ssize_t n);
int UnWrap1DByUnit(double phase[], ssize_t size, int phaseUnit);
int Variance(const double x[], ssize_t n, double *mean, double *var);
int WelchWin(double x[], ssize_t n);
int WhiteNoise(ssize_t n, double amp, int seed, double noise[]);
DDE Library Functions
int AdviseDDEDataReady(unsigned convHandle, const char userItemName[],unsigned dataFmt, const void *userData, size_t dataSize, unsigned timeOut);
int BroadcastDDEDataReady(const char userServName[], const char userTopicName[], const char userItemName[], unsigned dataFmt, const void *userData, size_t dataSize);
int ClientDDERead(unsigned convHandle, const char userItemName[], unsigned dataFmt, void *dataBuffer, size_t dataSize, unsigned timeOut);
int ClientDDEWrite(unsigned convHandle, const char userItemName[], unsigned dataFmt, const void *userData, size_t dataSize, unsigned timeOut);
int ServerDDEWrite(unsigned convHandle, const char userItemName[], unsigned dataFmt, const void *userData, size_t dataSize, unsigned timeOut);
Formatting and I/O Library Functions
int ReadFile(int File_Handle, char Buffer[], size_t Count);
int WriteFile(int File_Handle, char Buffer[], size_t Count);
int ArrayToFile(const char *filename, const void *array, int dataType, size_t numElements, size_t numGroups, int dataOrder, int fileLayout, int sepStyle, int fieldWidth, int fileType, int fileAction);
int FileToArray(const char *filename, void *array, int dataType, size_t numElements, size_t numGroups, int dataOrder, int fileLayout, int fileType);
intCompareBytes(const char* s1, int s1i, const char* s2, int s2i, size_t n, int case_sens);
void CopyBytes(char* d, int di, const char* s, int si, size_t n);
void CopyString(char* d, int di, const char* s, int si, ssize_t max_n);
int FindPattern(const char s[], int si, ssize_t n, const char* pattern, int case_sens, int start_from_right);
int ReadLine(int handle, char line[], ssize_t max_n);
int WriteLine(int handle, const char line[], ssize_t n);
void FillBytes(char *d, int di, size_t n, int ch);
GPIB Library Functions
void CVIGPIBFUNC RcvRespMsg(int boardID, void *buf, size_t cnt, int eotMode);
void CVIGPIBFUNC Receive(int boardID, Addr4882_t talker, void *buf, size_t cnt, int eotMode);
void CVIGPIBFUNC Send(int boardID, Addr4882_t listener, void *buf, size_t datacnt, int eotMode);
void CVIGPIBFUNC SendDataBytes(int boardID, void *buf, size_t cnt, int eot_mode);
void CVIGPIBFUNC SendList(int boardID, Addr4882_t laddrs[], void *buf, size_t datacnt, int eotMode);
int CVIGPIBFUNC ibcmd(int ud, void *buf, size_t cnt);
int CVIGPIBFUNC ibcmda(int ud, void *buf, size_t cnt);
int CVIGPIBFUNC ibrd(int ud, void *buf, size_t cnt);
int CVIGPIBFUNC ibrda(int ud, void *buf, size_t cnt);
int CVIGPIBFUNC ibwrt(int ud, void *buf, size_t cnt);
int CVIGPIBFUNC ibwrta(int ud, void *buf, size_t cnt);
void CVIGPIBFUNC FindLstn(int boardID, Addr4882_t pads[], short results[], size_t limit);
void CVIGPIBFUNC SendCmds(int boardID, void *buf, size_t cnt);
Internet Library Functions
int InetFTPSendData(int ftpHandle, const char *data, size_t size);
int InetTelnetReadUntil(int telnetHandle, char *readBuffer, size_t readBufferLength, char *stringToMatch, int timeout);
int InetFTPGetDir(int ftpHandle, char directoryName[], size_t length);
int InetFTPCommand(int ftpHandle, const char *command, char responseBuffer,size_t responseBufferSize, InetFTPCommandDataCallbackType callback);
int InetTelnetRunScript(int telnetHandle, TelnetScript *script, const char *endOfLine, int itemsInScript, char *log, size_t logLength, int timeout);
Network Variable Library Functions
int CNVGetStructFields(CNVData data, CNVData fields[], size_t numFields);
int CNVGetArrayDataValue(CNVData data, CNVDataType type, void * buffer, size_t numElements);
int CNVCreateStructDataValue(CNVData * data, CNVData fields[], size_t numFields);
int CNVSetStructDataValue(CNVData data, CNVData fields[], size_t numFields);
int CNVNewVariableCollection(const char * processName, size_t numVariables, const char * variableNames[], unsigned int maxBufferItems, int singleWriter);
int CNVGetArrayDataDimensions(CNVData data, size_t numDimensions, size_t dimensions[]);
int CNVCreateArrayDataValue(CNVData * data, CNVDataType type, const void * array, size_t numDimensions, size_t dimensions[]);
int CNVSetArrayDataValue(CNVData data, CNVDataType type, const void * array, size_t numDimensions, size_t dimensions[]);
int CNVCreateSubscriber(const char * networkVariablePathName,CNVDataCallback dataCallback, CNVStatusCallback statusCallback, void * callbackData, int waitTime, intptr_t reserved, CNVSubscriber * subscriber);
int CNVCreateBufferedSubscriber(const char * networkVariablePathName, CNVStatusCallback statusCallback, void * callbackData, int clientBufferMaxItems, int waitTime, intptr_t reserved, CNVBufferedSubscriber * subscriber);
int CNVCreateReader(const char * networkVariablePathName, CNVStatusCallback statusCallback, void * callbackData, int waitTime, intptr_t reserved, CNVReader * reader);
int CNVCreateAsyncReader(const char * networkVariablePathName, CNVDataCallback dataCallback, CNVStatusCallback statusCallback, void * callbackData, int waitTime, intptr_t reserved, CNVAsyncReader * reader);
int CNVCreateBufferedWriter(const char * networkVariablePathName, CNVDataTransferredCallback dataTransferredCallback, statusCallback, void * callbackData, int clientBufferMaxItems, int waitTime, intptr_t reserved, CNVBufferedWriter * bufferedWriter);
int CNVCreateWriter(const char * networkVariablePathName, CNVStatusCallback statusCallback, void * callbackData, int waitTime, intptr_t reserved, CNVWriter * writer);
Programmer's Toolbox Functions
Handle NewHandle(size_t numBytes);
int SetHandleSize(Handle handle, size_t newSize);
void SwapBlock(void *block1, void *block2, size_t numBytes);
int InternationalTime(char timeString[], size_t bufferSize);
int InternationalDate(char dateString[], size_t bufferSize);
int InternationalFileTime(const char filePath[], char timeString[], size_t bufferSize);
int InternationalFileDate(const char filePath[], char dateString[], size_t bufferSize);
void TransposeData(void *data, int dataType, size_t numPoints, int numChannels);
void ConvertArrayType(const void *sourceArray, int sourceDataType, void *targetArray, int targetDataType, size_t numberOfPoints);
int FindClosestColorInTable(int color, const int *table, size_t tableSize);
int ConvertDataToText(const unsigned char *dataPtr, size_t dataSize, unsigned char **textPtr);
void StringCopyMax(char *dest, const char *source, size_t destBufferSize);
char* StringInsert(char *destinationString, const char *stringToInsert, size_t destinationBufferSize);
void HeapSort(void *array, size_t numElements, size_t elementSize, CompareFunction compareFunction);
void InsertionSort(void *array, size_t numElements, size_t elementSize, CompareFunction compareFunction);
ListType ListCreate(size_t elementSize);
int HashTableGetItem(HashTableType table, const void *key, void *value, size_t valueBufferSize);
int HashTableIteratorGetItem(HashTableType table, HashTableIterator iterator, void *key, size_t keyBufferSize, void *value, size_t valueBufferSize);
int HashTableRemoveItem(HashTableType table, const void *key, void *value, size_t valueBufferSize);
int RegWriteBinary(unsigned int userRootKey, const char* userSubKeyName, const char* userValName, const unsigned char* userData, size_t userDataSize);
int RegReadBinary(unsigned int userRootKey, const char* userSubKeyName, const char* userValName, unsigned char* userBuffer, size_t userBufSize, unsigned int* prealDataSize);
int RegWriteStringArray(unsigned int userRootKey, const char* userSubKeyName, size_t userArrayItems, const char* userValNames[], const char* userStrings[]);
int RegReadString(unsigned int userRootKey, const char* userSubKeyName, const char* userValName, unsigned char* userString, size_t userStringSize, unsigned int* realStringSize);
int GetCurrentUser(char nameBuf[], size_t bufSize, unsigned int* realNameSize);
int GetIntListFromParmInfo(va_list parmInfo, size_t numIntegers, ListType *integerList);
ListType BuildIntegerList(size_t numIntegers, ...);
int AppendToIntegerList(ListType listToAppendTo, size_t numIntegers, ...);
int ListInsertItems(ListType list, const void *ptrToItems, ssize_t firstItemPosition, ssize_t numItemsToInsert);
void ListGetItems(ListType list, void *itemsDestination, ssize_t firstItemPosition, ssize_t numItemsToGet);
void ListReplaceItems(ListType list, const void *ptrToItems, ssize_t firstItemPosition, ssize_t numItemsToReplace);
void ListRemoveItems(ListType list, void *itemsDestination, ssize_t firstItemPosition, ssize_t numItemsToRemove);
void * ListGetPtrToItem(ListType list, ssize_t itemPosition);
int ListInsertItem(ListType list, const void *ptrToItem, ssize_t itemPosition);
void ListGetItem(ListType list, void *itemDestination, ssize_t itemPosition);
void ListReplaceItem(ListType list, const void *ptrToItem, ssize_t itemPosition);
void ListRemoveItem(ListType list, void *itemDestination, ssize_t itemPosition);
int ListPreAllocate(ListType list, size_t numItems);
int StrToLongLong(const char *str, long long *n);
int StrToULongLong(const char *str, unsigned long long *n);
unsigned int BinStrToUInt(const char *str, int *overflow);
char * UIntToBinStr(unsigned int value, char buffer[]);
unsigned long long BinStrToULongLong(const char *str, int *overflow);
char * ULongLongToBinStr(unsigned long long value, char buffer[]);
RS-232 Library Functions
int ComRd(int portNo, char buf[], size_t maxCnt);
int ComRdTerm(int portNo, char buf[], size_t maxCnt, int termCh);
int ComWrt(int portNo, const char *buf, size_t maxCnt);
TCP Support Library Functions
int ServerTCPRead(unsigned convHandle, void *dataBuffer, size_t dataSize, unsigned timeOut);
int ServerTCPWrite(unsigned convHandle, const void *userData, size_t dataSize, unsigned timeOut);
int ClientTCPRead(unsigned convHandle, void *dataBuffer, size_t dataSize, unsigned timeOut);
int ClientTCPWrite(unsigned convHandle, const void *userData, size_t dataSize, unsigned timeOut);
int GetTCPPeerName(unsigned handle, char* buf, size_t bufsize);
int GetTCPPeerAddr(unsigned handle, char* buf, size_t bufsize);
int GetTCPHostConnectionAddr(unsigned handle, char* buf, size_t bufsize);
int GetTCPHostName(char* buf, size_t bufsize);
int GetTCPHostAddr(char* buf, size_t bufsize);
TDM Streaming Library Functions
int TDMS_GetFileProperty(TDMSFileHandle file, const char *property, void *value, size_t valueSizeInBytes);
int TDMS_GetChannelGroupProperty(TDMSChannelGroupHandle channelGroup, const char *property, void *value, size_t valueSizeInBytes);
int TDMS_GetChannelProperty(TDMSChannelHandle channel, const char *property, void *value, size_t valueSizeInBytes);
int TDMS_GetChannelGroups(TDMSFileHandle file, TDMSChannelGroupHandle channelGroupsBuf[], size_t numChannelGroups);
int TDMS_GetChannels(TDMSChannelGroupHandle channelGroup, TDMSChannelHandle channelsBuf[], size_t numChannels);
int TDMS_AppendDataValues(TDMSChannelHandle channel, void *values, size_t numValues, int saveFile);
int TDMS_AppendDataValuesTimestampComponents(TDMSChannelHandle channel, unsigned int year[], unsigned int month[], unsigned int day[], unsigned int hour[], unsigned int minute[], unsigned int second[], double milliSecond[], size_t numValues, int saveFile);
int TDMS_GetDataValuesEx(TDMSChannelHandle channel, unsigned __int64 indexOfFirstValueToGet, size_t numValuesToGet, void *values);
int TDMS_GetDataValuesTimestampComponents(TDMSChannelHandle channel, unsigned __int64 indexOfFirstValueToGet, size_t numValuesToGet, unsigned int year[], unsigned int month[], unsigned int day[], unsigned int hour[], unsigned int minute[], unsigned int second[], double milliSecond[], unsigned int weekDay[]);
int TDMS_GetFilePropertyNames(TDMSFileHandle file, char** propertyNames, size_t numPropertyNames);
int TDMS_GetChannelGroupPropertyNames(TDMSChannelGroupHandle channelGroup, char** propertyNames, size_t numPropertyNames);
int TDMS_GetChannelPropertyNames(TDMSChannelHandle channel, char** propertyNames, size_t numPropertyNames);
Other Toolslib Module Functions
int ColorPicker_SetFixedColors(int panel, int control, const int colors[], size_t numColors);
int ColorPicker_SetCustomColors(int panel, int control, const int colors[], size_t numColors);
int ColorPicker_GetFixedColors(int panel, int control, int colors[], size_t numColors);
int ColorPicker_GetCustomColors(int panel, int control, int colors[], size_t numColors);
void DLLEXPORT OGLGetErrorString(int errorCode, char *errorBuf, size_t length);
void CVIXMLGetErrorString(CVIXMLStatus error, char buffer[], size_t bufferLength);
int Ini_GetStringIntoBuffer(IniText theIniText, const char *section, const char temName, char buffer[], size_t bufSize);
int Ini_GetRawStringIntoBuffer(IniText theIniText, const char *section, const char *itemName, char buffer[], size_t bufSize);
int SMITH_PlotImpedanceWaveform(int panel, int control, Complex *Z_Array, size_t Number_of_Points, int Plot_Style, int Point_Style, int Line_Style, int Color);
HRESULT ExcelRpt_WriteData(CAObjHandle worksheetHandle, const char *cellRange, enum ExREnum_ExDataType dataType, size_t dim1, size_t dim2, const void *data);
HRESULT ExcelRpt_FreeStringData(char **data, size_t count);
int LineFile_Read(LineFile lineFile, char *destBuf, size_t maxNumBytes, ssize_t *bytesRead, int *endOfFile);
int LineFile_ReadNonEmpty(LineFile lineFile, char *destBuf, size_t maxNumBytes, ssize_t *bytesRead, int *endOfFile);
int GCC_Discard (GraphCursorCtrlHandle gcc);
int GCC_Refresh(GraphCursorCtrlHandle gcc);
int GCC_GetAttribute(GraphCursorCtrlHandle gcc, int attribute, void *value);
int GCC_SetAttribute(GraphCursorCtrlHandle gcc, int attribute, ...);
int GCC_AddCursor(GraphCursorCtrlHandle gcc, char *name);
int GCC_RemoveCursorByNumber(GraphCursorCtrlHandle gcc, int cursor);
int GCC_RemoveCursorByName(GraphCursorCtrlHandle gcc, char *name);
int GCC_GetCursorNameLength(GraphCursorCtrlHandle gcc, int cursor, int *length);
int GCC_GetCursorName(GraphCursorCtrlHandle gcc, int cursor, char *name);
int GCC_SetCursorName(GraphCursorCtrlHandle gcc, int cursor, char *name);
int RegExpr_MatchText(RegExprHandle handle, const char *text, int txtLen, int matchPolicy, int *matchLen);
void RegExpr_Destroy(RegExprHandle handle);
UDP Library Functions
int UDPWrite(unsigned channel, unsigned destinationPort, const char *destinationAddr, void *buf, size_t numBytes);
int UDPRead(unsigned channel, void *buf, size_t bufsize, unsigned timeout, unsigned *sourcePort, char *sourceAddr);
User Interface Library Functions
int PlotX(int panel, int control, void *xArray, size_t numPoints, int xDType, int plotStyle, int pointStyle, int lineStyle, int pointFreq, int color);
int PlotY(int panel, int control, void *yArray, size_t numPoints, int yDType, int plotStyle, int pointStyle, int lineStyle, int pointFreq, int color);
int PlotXY(int panel, int control, void *xArray, void *yArray, size_t numPoints, int xDType, int yDType, int plotStyle, int pointStyle, int lineStyle, int pointFreq, int color);
int PlotWaveform(int panel, int control, void *wfmArray, size_t numPoints, int wfmDType, double yGain, double yOffset, double xInit, double xInc, int plotStyle, int pointStyle, int lineStyle, int pointFreq, int color);
int PlotPolygon(int panel, int control,void *xArray,void *yArray, size_t numPoints, int xDType, int yDType, int frameColor, int fillColor);
int PlotIntensity(int panel, int control,void *zArray, size_t numXPoints, size_t numYPoints, int zDType, ColorMapEntry colors[], int hiColor, size_t numColors, int interpColors, int interpPixels);
int PlotScaledIntensity(int panel, int control,void *zArray, size_t numXPoints, size_t numYPoints, int zDType, double yGain, double yOffset, double xGain, double xOffset, ColorMapEntry colors[], int hiColor, size_t numColors, int interpColors, int interpPixels);
int PlotStripChart(int panel, int control, void *yArray, size_t numPoints, int start, int skip, int yDType);
int PlotPackedDigitalLines(int panel, int control, void *data, size_t numElements, int dataType, void *mask);
int PlotDigitalLines(int panel, int control, void *data, size_t numPoints, int dataType, unsigned char numLines);
int PlotPackedDigitalLinesMultiBus(int panel, int control, void *data, size_t numElements, int numBuses, int dataType, int interleaved, void *maskArray)
int PlotDigitalLinesMultiBus(int panel, int control, void *data, size_t numPoints, int numBuses, int dataType, int interleaved, unsigned char *numPlotLinesArray);
int GetAxisTimeFormat(int panel, int control, int axis, int format, char *outputBuffer, size_t bufferSize);
int PromptPopup(const char *popupTitle, const char *messageString, char *responseBuffer, size_t maxResponseLength);
int GenericMessagePopup(const char *popupTitle, const char *messageString, const char *btn1Label, const char *btn2Label, const char *btn3Label, char *responseBuffer, size_t maxResponseLength, int putBtnsOnSide, int activeControl, int defaultBtn, int cancelBtn);
int YGraphPopup(const char *popupTitle, void *yArray, size_t numPoints, int yDType);
int XGraphPopup(const char *popupTitle, void *xArray, size_t numPoints, int xDType);
int XYGraphPopup(const char *popupTitle, void *xArray, void *yArray, size_t numPoints, int xDType, int yDType);
int WaveformGraphPopup(const char *popupTitle, void *wFmArray, size_t numPoints, int wFmDType, double yGain, double yOffset, double xInit, double xInc);
int CanvasDrawPoly(int panel, int control, size_t numPts, const Point points[], int wrap, int drawMode);
Utility Library Functions
int CmtWriteTSQData(TSQHandle queueHandle, const void *buffer, size_t numItems, int timeout, int *numItemsFlushed);
int CmtReadTSQData(TSQHandle queueHandle, void *buffer, size_t numItems, int timeout, unsigned int options);
int CmtNewTSQ(int numItems, size_t itemSize, unsigned int options, CmtTSQHandle *queueHandle);
int CmtNewThreadLocalVar(size_t varSize, const void *initialValue, TLVCallbackPtr callback, void *callbackData, TLVHandle *tlvHandle);
int CmtNewTSV(size_t tsvSize, TSVHandle *tsvHandle);
int CmtDiscardTSQ(CmtTSQHandle queueHandle);
int CmtGetTSQAttribute(CmtTSQHandle queueHandle, int attribute, void *value);
int CmtSetTSQAttribute(CmtTSQHandle queueHandle, int attribute, ...);
int CmtWriteTSQData(CmtTSQHandle userHandle, const void *buffer, int numItems, int timeout, int *numItemsFlushed);
int CmtGetTSQWritePtr(CmtTSQHandle queueHandle, void *writePointer, int *numEmptyItems);
int CmtReleaseTSQWritePtr(CmtTSQHandle queueHandle, int itemsWritten);
int CmtReadTSQData(CmtTSQHandle queueHandle, void *buffer, int numItems, int timeout, unsigned int options);
int CmtGetTSQReadPtr(CmtTSQHandle queueHandle, void *readPointer, int *numAvailableItems);
int CmtReleaseTSQReadPtr(CmtTSQHandle queueHandle, int itemsRead);
int CmtFlushTSQ(CmtTSQHandle userHandle, int numItems, int *numItemsFlushed);
int CmtInstallTSQCallback(CmtTSQHandle queueHandle, unsigned int event, int thresholdValue, CmtTSQCallbackPtr callback, void *callbackData, unsigned int threadID, CmtTSQCallbackID *callbackID);
int CmtUninstallTSQCallback(CmtTSQHandle queueHandle, CmtTSQCallbackID callbackID);
int CmtScheduleThreadPoolFunction(CmtThreadPoolHandle poolHandle, CmtThreadFunctionPtr threadFunction, void *threadFunctionData, CmtThreadFunctionID *threadFunctionID);
int CmtScheduleThreadPoolFunctionAdv(CmtThreadPoolHandle poolHandle, CmtThreadFunctionPtr threadFunction, void *threadFunctionData, int threadFunctionPriority, CmtThreadFunctionCallbackPtr callback, unsigned int callbackEventMask, void *callbackData, unsigned int callbackThreadID, CmtThreadFunctionID *threadFunctionID);
int CmtReleaseThreadPoolFunctionID(CmtThreadPoolHandle poolHandle, CmtThreadFunctionID threadFunctionID);
int CmtGetThreadPoolFunctionAttribute(CmtThreadPoolHandle poolHandle, CmtThreadFunctionID threadFunctionID, int attribute, void *value);
int CmtWaitForThreadPoolFunctionCompletion(CmtThreadPoolHandle poolHandle, CmtThreadFunctionID threadFunctionID, unsigned int options);
int CmtDiscardThreadPool(CmtThreadPoolHandle poolHandle);
int CmtPreAllocThreadPoolThreads(CmtThreadPoolHandle poolHandle, int numThreads, int *numAllocated);
int CmtTerminateThreadPoolThread(CmtThreadPoolHandle poolHandle, unsigned int threadID, int exitCode);
int CmtGetThreadPoolAttribute(CmtThreadPoolHandle poolHandle, int attribute, void *value);
int CmtSetThreadPoolAttribute(CmtThreadPoolHandle poolHandle, int attribute, ...);
int CmtInstallThreadPoolCallback(CmtThreadPoolHandle poolHandle, unsigned int event, CmtThreadPoolCallbackPtr callback, void *callbackData, CmtThreadPoolCallbackID *callbackID);
int CmtUninstallThreadPoolCallback(CmtThreadPoolHandle poolHandle, CmtThreadPoolCallbackID callbackID);
int CmtDiscardThreadLocalVar(CmtTLVHandle tlvHandle);
int CmtGetThreadLocalVar(CmtTLVHandle tlvHandle, void *threadLocalPtr);
int CmtDiscardLock(CmtThreadLockHandle lockHandle);
int CmtGetLock(CmtThreadLockHandle lockHandle);
int CmtTryToGetLock(CmtThreadLockHandle lockHandle, int *obtainedLock);
int CmtReleaseLock(CmtThreadLockHandle lockHandle);
int CmtGetLockAttribute(CmtThreadLockHandle lockHandle, int attribute, void *value);
Updates That Might Require Source Code Updates
The following updates might cause warnings and errors and might require you to update your source code. These updates include changing the data type of certain output parameters and return values that now return an 8-byte system handle that you pass to Microsoft libraries from int * to intptr_t * and changing the data type of output parameters that return memory sizes to size_t.
Data types and functions in blue indicate updates or additions.
.NET Library Functions
int CVIFUNC CDotNetCreateArray(unsigned int elementType, size_t numDimensions, ssize_t lowerBounds[], ssize_t lengths[], void * elements, CDotNetHandle * array);
int CVIFUNC CDotNetCreateTypedArray(CDotNetAssemblyHandle elementTypeAssembly, const char * elementTypeName, size_t numDimensions, ssize_t lowerBounds[], ssize_t lengths[], void * elements, CDotNetHandle * array);
int CVIFUNC CDotNetGetArrayNumDimensions(CDotNetHandle array, ssize_t * numDimensions);
int CVIFUNC CDotNetGetArrayLength(CDotNetHandle array, size_t dimension, ssize_t * length);
int CVIFUNC CDotNetGetArrayLowerBound(CDotNetHandle array, size_t dimension, ssize_t * lowerBound);
int CVIFUNC CDotNetGetArrayElements(CDotNetHandle array, unsigned int elementType, ssize_t * numElements, void * elements);
int CVIFUNC CDotNetGetArrayElement(CDotNetHandle array, unsigned int elementType, size_t numDimensions, ssize_t indices[], void * element);
int CVIFUNC CDotNetSetArrayElement(CDotNetHandle array, unsigned int elementType, size_t numDimensions, ssize_t indices[], void * element);
int CVIFUNC CDotNetGetNumberOfGenericTypeParameters(CDotNetHandle instance, const char * typeName, ssize_t * numGenericParameters);
ActiveX Library Functions
HRESULT CA_VariantGet1DArray(VARIANT *v, unsigned int cavt, void *array, size_t *dimSz);
HRESULT CA_VariantGet2DArray(VARIANT *v, unsigned int cavt, void *array, size_t *dim1Sz, size_t *dim2Sz);
HRESULT CA_VariantGet1DArraySize(const VARIANT *v, size_t *numElements);
HRESULT CA_VariantGet2DArraySize(const VARIANT *v, size_t *dim1NumElements, size_t *dim2NumElements);
HRESULT CA_SafeArrayTo1DArray(LPSAFEARRAY *ppSafeArray, unsigned int cavt, void *array, size_t *dimSz);
HRESULT CA_SafeArrayTo2DArray(LPSAFEARRAY *ppSafeArray, unsigned int cavt, void *array, size_t *dim1Sz, size_t *dim2Sz);
HRESULT CA_SafeArrayTo1DArrayEx(LPSAFEARRAY *ppSafeArray, unsigned int cavt, unsigned int options, void *array, size_t *dimSz);
HRESULT CA_SafeArrayTo2DArrayEx(LPSAFEARRAY *ppSafeArray, unsigned int cavt, unsigned int options, void *array, size_t *dim1Sz, size_t *dim2Sz);
HRESULT CA_SafeArrayGet1DSize(LPSAFEARRAY pSafeArray, size_t *numElements);
HRESULT CA_SafeArrayGet2DSize(LPSAFEARRAY pSafeArray, size_t *dim1NumElements, size_t *dim2NumElements);
HRESULT CA_VariantGet1DArrayBuf(VARIANT *v, unsigned int cavt, void *buf, size_t bufSizeInBytes, size_t *numElements);
HRESULT CA_VariantGet2DArrayBuf(VARIANT *v, unsigned int cavt, void *buf, size_t bufSizeInBytes, size_t *dim1NumElements, size_t *dim2NumElements);
HRESULT CA_SafeArrayTo1DArrayBuf(LPSAFEARRAY *ppSafeArray, unsigned int cavt, void *buf, size_t bufSizeInBytes, size_t *numElements);
HRESULT CA_SafeArrayTo2DArrayBuf(LPSAFEARRAY *ppSafeArray, unsigned int cavt, void *buf, size_t bufSizeInBytes, size_t *dim1NumElements, size_t *dim2NumElements);
HRESULT CA_SafeArrayTo1DArrayBufEx(LPSAFEARRAY *ppSafeArray, unsigned int cavt, unsigned int options,void *buf, size_t bufSizeInBytes, size_t *numElements);
HRESULT CA_SafeArrayTo2DArrayBufEx(LPSAFEARRAY *ppSafeArray, unsigned int cavt, unsigned int options,void *buf, size_t bufSizeInBytes, size_t *dim1NumElements, size_t *dim2NumElements);
Formatting and I/O Library Functions
int GetFileInfo(char File_Name[], ssize_t *File_Size);
ssize_t SetFilePtr(int handle, ssize_t offset, int origin);
Internet Library Functions
int InetFTPReceiveData(int ftpHandle, char *data, size_t size);
int InetTelnetRead(int telnetHandle, char *readBuffer, ssize_t bytesToRead, ssize_t *bytesRead, int timeout);
int InetTelnetWrite(int telnetHandle, const char *writeBuffer, const char *endOfLine, ssize_t bytesToWrite, ssize_t *bytesWritten, int timeout);
Network Variable Library Functions
int CNVGetArrayDataDimensions(CNVData data, size_t numDimensions, size_t dimensions[]);
int CNVCreateArrayDataValue(CNVData * data, CNVDataType type, const void * array, size_t numDimensions, size_t dimensions[]);
int CNVSetArrayDataValue(CNVData data, CNVDataType type, const void * array, size_t numDimensions, size_t dimensions[]);
Programmer's Toolbox Functions
int InstallWinMsgCallback(int panelHandle, int msgNum, WinMsgCallback pcallback, int callWhen, void* pcallbackData, intptr_t* phwnd);
size_t GetHandleSize(Handle handle);
int GetMemoryInfo(unsigned long* percentLoad, size_t* totalPhysical, size_t* totalPage, size_t* totalVirtual, size_t* availPhysical, size_t* availPage, size_t* availVirtual);
int FileExists(const char *pathName, ssize_t *fileSize);
int FindBytesInFile(FILE *file, void *bytesToFind, int numBytesToFind, ssize_t *offset, ssize_t *position);
long CmbStrEqN(const unsigned char *s1, const unsigned char *s2, size_t n);
long CmbStrEqNI(const unsigned char *s1, const unsigned char *s2, size_t n);
long CmbStrByteIs(const unsigned char *buf, size_t offset, long ch);
int BinaryFileSize(FILE *file, ssize_t *size);
int GetDragAndDropData(char ***fileNames, Point *mousePoint);
int GetRoutedWinMsgParams(int panel, InterceptedWindowsMsg *msg);
int SetRoutedWinMsgParams(int panel, int result);
ssize_t BinSearch(const void *array, size_t numElements, size_t elementSize, const void *itemPtr, CompareFunction compareFunction);
size_t ListNumItems(ListType list);
size_t ListFindItem(ListType list, const void *ptrToItem, ssize_t startingPosition, CompareFunction compareFunction);
ssize_t ListBinSearch(ListType list, const void *itemPtr, CompareFunction compareFunction);
size_t OutputList(ListType list, FILE *stream, const char *listPrefix, const char *listSuffix, const char *itemPrefix, const char *itemSuffix, ItemOutputFunction itemOutputFunction);
int ConvertTextToData(const unsigned char *textPtr, size_t *dataSize, unsigned char **dataPtr);
int ListApplyToEachEx(ListType list, int ascending, ListApplicationFuncEx funcToApply, void *callbackData);
RS-232 Library Functions
int GetSystemComHandle(int portNo, intptr_t *handle);
TCP Support Library Functions
int GetHostTCPSocketHandle(unsigned handle, intptr_t *sockRef);
Other Toolslib Module Functions
int LineFile_Read(LineFile lineFile, char *destBuf, size_t maxNumBytes, ssize_t *bytesRead, int *endOfFile);
int LineFile_ReadNonEmpty(LineFile lineFile, char *destBuf, size_t maxNumBytes, ssize_t *bytesRead, int *endOfFile);
int Toolbar_GetToolbarInItemEvent(ToolbarType *toolbar);
int Ini_GetData(IniText iniText, const char *section, const char *itemName, unsigned char **data, size_t *dataSize);
GraphCursorCtrlHandle GCC_New(int panel, int graph, int offset, int position, int num_rows);
int NIReport_New(NIReportHandle* phreport);
int RegExpr_Parse(const char *text, int caseSensitive, RegExprHandle *handle);
Other Toolslib Module Attributes
ASYNC_ATTR_TIMER_TIME
ASYNC_ATTR_DELTA_TIME
UDP Library Functions
int GetUDPSocketHandle(unsigned channel, intptr_t *socketHandle);
User Interface Library Functions
intptr_t GetCVIWindowHandle(void);
intptr_t GetCVIWindowHandleForCurrThread(void);
int GetTimerTickData(float64 *time, float64 *timeSinceLastCallback);
User Interface Library Attributes
ATTR_SYSTEM_WINDOW_HANDLE (intptr_t)
ATTR_PLOT_XDATA_SIZE (size_t)
ATTR_PLOT_YDATA_SIZE (size_t)
ATTR_PLOT_ZDATA_SIZE (size_t)
ATTR_NUM_POINTS (size_t)
Utility Library Functions
int CVIDynamicMemoryInfo(const charmessage[], size_t *allocatedBlocks, size_t *allocatedBytes, unsigned intoptions);
int GetFileSize(const char fileName[], ssize_t *fileSize);
int CmtNewLock(const char lockName[], unsigned int options, CmtThreadLockHandle *lockHandle);
int CmtNewTSQ(int numItems, int itemSize, unsigned int options, CmtTSQHandle *queueHandle);
int CmtNewThreadLocalVar(int varSize, const void *initialValue, TLVCallbackPtr callback, void *callbackData, CmtTLVHandle *tlvHandle);
int CmtNewThreadPool(int maxNumThreads, CmtThreadPoolHandle *poolHandle);
Utility Library Attributes
ATTR_TSQ_QUEUE_SIZE (size_t)
ATTR_TSQ_ITEM_SIZE (size_t)
ATTR_TSQ_ITEMS_IN_QUEUE (size_t)
ATTR_TSQ_QUEUE_FREE_SPACE (size_t)
ATTR_TSQ_GROWTH_INCREMENT (size_t)
ATTR_TP_THREAD_STACK_SIZE (size_t)