/////////////////////////////////////////////////////////////////////////////// // // ## ###### // ###### ### // ## ############### Shark 3D Engine (www.shark3d.com) // ########## # # # // ######## Copyright (c) 1996-2006 Spinor GmbH. // ######### # # # All rights reserved. // ## ########## // ## // /////////////////////////////////////////////////////////////////////////////// //@cpp #ifndef S3D_DRV_D3D9_PROGREPORT_H #define S3D_DRV_D3D9_PROGREPORT_H #include "drv_d3d9_env.h" #include "drv_d3d9_prog.h" #include "util/stream/util_textstreampos.h" #include "lib/stream/lib_stream_prepro.h" /////////////////////////////////////////////////////////////////////////////// //@ class s3d_CDrvD3d9ProgReport { public: //@ virtual s3d_CUtilStr CalcInfoOfSrc( s3d_CUtilStr_cr SrcName, int SrcLine) = 0; //@ static s3d_CUtilStr GetDxBufferStr( LPD3DXBUFFER DxBuffer); //@ bool ReportCompilingText( s3d_CDrvD3d9Env *DxEnv, s3d_CUtilStr_cr Info, s3d_CUtilStr_cr Text, HRESULT DxResult); //@ bool ReportCompilingBuffer( s3d_CDrvD3d9Env *DxEnv, s3d_CUtilStr_cr Info, LPD3DXBUFFER DxBuffer, HRESULT DxResult); }; /////////////////////////////////////////////////////////////////////////////// //@ class s3d_CDrvD3d9ProgReportMap: public s3d_CDrvD3d9ProgReport { public: //@ s3d_CDrvD3d9ProgReportMap( s3d_CUtilStr_cr MainStreamName, int MainLineOffs, const s3d_CUtilMap *StreamNameMap); //@ s3d_CUtilStr CalcInfoOfSrc( s3d_CUtilStr_cr SrcName, int SrcLine); private: s3d_CUtilStr m_MainStreamName; int m_MainLineOffs; const s3d_CUtilMap *m_StreamNameMap; }; /////////////////////////////////////////////////////////////////////////////// //@ class s3d_CDrvD3d9ProgReportRetrace: public s3d_CDrvD3d9ProgReport { public: //@ s3d_CDrvD3d9ProgReportRetrace( s3d_CLibStreamPreproDest *PreproDest); //@ s3d_CUtilStr CalcInfoOfSrc( s3d_CUtilStr_cr SrcName, int SrcLine); private: s3d_CLibStreamPreproDest *m_PreproDest; }; /////////////////////////////////////////////////////////////////////////////// #endif