A3DDllSetCallbacksProgress
-
A3DStatus
A3DDllSetCallbacksProgress(A3DCallbackProgressStart, A3DCallbackProgressSize, A3DCallbackProgressIncrement, A3DCallbackProgressEnd, A3DCallbackProgressTitle, A3DInt32*) A3DStatusA3DDllSetCallbacksProgress(A3DCallbackProgressStart,A3DCallbackProgressSize,A3DCallbackProgressIncrement,A3DCallbackProgressEnd,A3DCallbackProgressTitle,A3DInt32*)Sets callbacks for progress bar facility.
This function configures the library with the callback functions that implement a custom progress indicator, such as a status bar.
The last argument passed to this function sets a break. The library checks this variable at every significant step in processing the PRC. If the value is non-zero, the library stops processing the PRC data.
2.0
The library stops processing the PRC data if the last argument passed to this function is non-zero.
Sample code
A3DVoidmy_start(A3DInt32iType){_tprintf(_T("STARTINGPROCESS#%d"),iType);fflush(stdout);} staticA3DInt32stiSize=0; A3DVoidmy_size(A3DInt32iSize){stiSize=iSize;} A3DVoidmy_increment(A3DInt32i){_tprintf(_T("PROCESS%d/%d"),i,stiSize);fflush(stdout);} A3DVoidmy_end(){stiSize=0;} A3DVoidmy_title(A3DUTF8Char*msg) { #ifdef_MSC_VER A3DUniCharacUTF16FileName[MAX_PATH*4]; A3DMiscUTF8ToUTF16(msg,acUTF16FileName); _tprintf(_T("CURRENTFILE%s\n"),acUTF16FileName); #else _tprintf(_T("CURRENTFILE%s\n"),msg); #endif fflush(stdout); } A3DInt32iErr=A3D_SUCCESS; A3DInt32iMajorVersion,iMinorVersion=0; A3DInt32my_break=0; iErr=A3DDllGetVersion(&iMajorVersion,&iMinorVersion); iErr=A3DDllInitialize(A3D_DLL_MAJORVERSION,A3D_DLL_MAJORVERSION); if(iErr==A3D_SUCCESS) { iErr=A3DDllSetCallbacksProgress(my_start,my_size,my_increment,my_end,my_title,&my_break); iErr=A3DDllTerminate(); }
Returns
A3D_SUCCESSon success, or an error code on failure