${CMAKE_SOURCE_DIR}/specs/d3d9.py
${CMAKE_SOURCE_DIR}/specs/d3d9types.py
${CMAKE_SOURCE_DIR}/specs/d3d9caps.py
+ ${CMAKE_SOURCE_DIR}/specs/d3d9dxva2.py
${CMAKE_SOURCE_DIR}/specs/winapi.py
${CMAKE_SOURCE_DIR}/specs/stdapi.py
)
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3d10trace.py > ${CMAKE_CURRENT_BINARY_DIR}/d3d10trace.cpp
DEPENDS
d3d10trace.py
+ d3dcommontrace.py
dlltrace.py
trace.py
${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3d10_1trace.py > ${CMAKE_CURRENT_BINARY_DIR}/d3d10_1trace.cpp
DEPENDS
d3d10_1trace.py
+ d3dcommontrace.py
dlltrace.py
trace.py
${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
${CMAKE_SOURCE_DIR}/specs/winapi.py
${CMAKE_SOURCE_DIR}/specs/stdapi.py
)
- add_library (d3d10_1trace MODULE d3d10_1.def d3d10_1trace.cpp)
+ add_library (d3d10_1trace MODULE d3d10_1.def d3d10_1trace.cpp d3d10shader.cpp)
target_link_libraries (d3d10_1trace
common_trace
common
common
${ZLIB_LIBRARIES}
${SNAPPY_LIBRARIES}
- ${X11_X11_LIB}
${CMAKE_THREAD_LIBS_INIT}
dl
)
egltrace.cpp
glcaps.cpp
gltrace_state.cpp
+ ${CMAKE_SOURCE_DIR}/helpers/eglsize.cpp
)
add_dependencies (egltrace glproc)
from dlltrace import DllTracer
from specs.d3d9 import d3d9, D3DSHADER9
+import specs.d3d9dxva2
+
class D3D9Tracer(DllTracer):
def enumWrapperInterfaceVariables(self, interface):
variables = DllTracer.enumWrapperInterfaceVariables(self, interface)
+ # Add additional members to track locks
if interface.getMethodByName('Lock') is not None or \
interface.getMethodByName('LockRect') is not None or \
interface.getMethodByName('LockBox') is not None:
return variables
def implementWrapperInterfaceMethodBody(self, interface, base, method):
+ if method.name == 'DecodeExecute':
+ print r' _NumCompBuffers = pExecuteParams->NumCompBuffers;'
+
+ if method.name == 'VideoProcessBlt':
+ print r' _NumSrcSurfaces = pData->NumSrcSurfaces;'
+
if method.name in ('Unlock', 'UnlockRect', 'UnlockBox'):
print ' if (_LockedSize && m_pbData) {'
self.emit_memcpy('(LPBYTE)m_pbData', '(LPBYTE)m_pbData', '_LockedSize')
print '#include "os.hpp"'
print
print '#include "d3d9imports.hpp"'
- print '#include "d3dsize.hpp"'
+ print '#include "d3d9size.hpp"'
print '#include "d3d9shader.hpp"'
+ print '#include "dxvaint.h"'
print
print '''
static inline size_t
}
return count;
}
+
+static UINT _NumCompBuffers = 0; /* XXX */
+static UINT _NumSrcSurfaces = 0; /* XXX */
'''
tracer = D3D9Tracer('d3d9.dll')
tracer.traceApi(d3d9)