Ada计算机图形DirectX之PIXPlugin

----------------------------------------
-- Microsoft DirectX Ada Binding Lib  --
-- File : PIXPlugin.ads               --
-- Translator:Dongfeng.Gu,2018/11/05  --
-- Mail: [email protected]                --
-- Progress:100%                      --
----------------------------------------

with win32;              use win32;
with win32.windef;       use win32.windef;
with win32.winnt;        use win32.winnt;
with win32.objbase;      use win32.objbase;

package PIXPlugin is

   type LPLPWCHAR is access all win32.LPWCHAR;
   subtype LPCWCHAR is win32.PCWCH;

   type LPLPBYTE is access all win32.PBYTE;

   PIX_PLUGIN_SYSTEM_VERSION : constant := 16#101#;

   subtype PIXCOUNTERID is int;

   type PIXCOUNTERDATATYPE is (PCDT_RESERVED,
                               PCDT_FLOAT,
                               PCDT_INT,
                               PCDT_INT64,
                               PCDT_STRING);

   type LPPIXCOUNTERDATATYPE is access PIXCOUNTERDATATYPE;

   type PIXPLUGININFO is record
      hinst: HINSTANCE;
      pstrPluginName:LPWCHAR;
      iPluginVersion: int;
      iPluginSystemVersion: int;
   end record;

   type LPPIXPLUGININFO is access all PIXPLUGININFO;

   type PIXCOUNTERINFO is record
      counterID: PIXCOUNTERID;
      pstrName:LPWCHAR;
      pcdtDataType: PIXCOUNTERDATATYPE;
   end record;

   type LPPIXCOUNTERINFO is access all PIXCOUNTERINFO;
   type LPLPPIXCOUNTERINFO is access all LPPIXCOUNTERINFO;


   function PIXGetPluginInfo(pPIXPluginInfo:LPPIXPLUGININFO) return BOOL with Import,Convention=>stdcall,external_name=>"PIXGetPluginInfo";

   function PIXGetCounterInfo(pdwReturnCounters:LPDWORD;ppCounterInfoList:LPLPPIXCOUNTERINFO) return BOOL with Import,Convention=>stdcall,external_name=>"PIXGetCounterInfo";

   function PIXGetCounterDesc(id:PIXCOUNTERID;ppstrCounterDesc:LPLPWCHAR) return BOOL with Import,Convention=>stdcall,external_name=>"PIXGetCounterDesc";

   function PIXBeginExperiment(id:PIXCOUNTERID;pstrApplication:LPCWCHAR) return BOOL with Import,Convention=>stdcall,external_name=>"PIXBeginExperiment";

   function PIXEndFrame(id:PIXCOUNTERID;iFrame:UINT;pdwReturnBytes:LPDWORD;ppReturnData:LPLPBYTE) return BOOL with Import,Convention=>stdcall,external_name=>"PIXEndFrame";

   function PIXEndExperiment(id:PIXCOUNTERID) return BOOL with Import,Convention=>stdcall,external_name=>"PIXEndExperiment";


   --
   -- THE END.
   --

end PIXPlugin;










猜你喜欢

转载自blog.csdn.net/adacore/article/details/83743515