;-------------------------------------------------------------------------------
; INTEL CONFIDENTIAL
;
; Copyright (c) 2020-2023 Intel Corporation All Rights Reserved 
;
; The source code contained or described herein and all documents related to 
; the source code ("Material") are owned by Intel Corporation or its suppliers 
; or licensors. Title to the Material remains with Intel Corporation or its 
; suppliers and licensors. The Material contains trade secrets and proprietary 
; and confidential information of Intel or its suppliers and licensors. The 
; Material is protected by worldwide copyright and trade secret laws and treaty 
; provisions. No part of the Material may be used, copied, reproduced, 
; modified, published, uploaded, posted, transmitted, distributed, or 
; disclosed in any way without Intel's prior express written permission.
;
; No license under any patent, copyright, trade secret or other intellectual 
; property right is granted to or conferred upon you by disclosure or delivery 
; of the Materials, either expressly, by implication, inducement, estoppel or 
; otherwise. Any license under such intellectual property rights must be 
; expressed and approved by Intel in writing.
;------------------------------------------------------------------------------

[Version] 
Signature = "$WINDOWS NT$" 
Class = SoftwareComponent
ClassGuid = {5c4c3332-344d-483c-8739-259e934c9cc8}
Provider = %INTEL% 
CatalogFile = ipf_ef_sw.cat
DriverVer = 09/13/2023,2.1.10101.17
PnpLockDown = 1

;----------------------------------------------------------------------
; File Information
;----------------------------------------------------------------------
[SourceDisksNames]
1 = %DiskName%,,,""

[SourceDisksFiles]
ClientApiProxy.dll = 1
NamespaceMgr.dll = 1
ProviderCatalogProxy.dll = 1
CoreProvider.dll = 1
CoreApiProxy.dll = 1

[DestinationDirs]
DefaultDestDir = 13

;-------------------------------------------------------------------------------
; Manufacturer and Models Section
;-------------------------------------------------------------------------------
[Manufacturer]
%INTEL% = INTEL,NTamd64.10.0...17763

[INTEL.NTamd64.10.0...17763]
%IpfEf_FriendlyName% = IpfEfInstall, SWC\VID8086_IPFEF_1.0

;------------------------------------------------------------------------------
; Install Sections 
;------------------------------------------------------------------------------
[IpfEfInstall.NTamd64]
CopyFiles = IpfEf_CopyFiles
AddReg = IpfNamespaceMgrEtw_AddReg
AddReg = IpfClientApiProxyEtw_AddReg
AddReg = CoreProviderEtw_AddReg
AddReg = CoreApiProxyEtw_AddReg

[IpfEfInstall.NTamd64.Services]
AddService = ,2

[IpfEf_CopyFiles]
ClientApiProxy.dll
NamespaceMgr.dll
ProviderCatalogProxy.dll
CoreProvider.dll
CoreApiProxy.dll

[IpfNamespaceMgrEtw_AddReg]
HKLM,%IpfNamespaceMgrEtwProviderKey%,,%REG_SZ%,"NamespaceMgrEtwProvider"
HKLM,%IpfNamespaceMgrEtwProviderKey%,"ResourceFileName",%REG_EXPAND_SZ%,"%13%\NamespaceMgr.dll"
HKLM,%IpfNamespaceMgrEtwProviderKey%,"MessageFileName",%REG_EXPAND_SZ%,"%13%\NamespaceMgr.dll"
HKLM,%IpfNamespaceMgrEtwProviderKey%,"Enabled",%REG_DWORD%,1

[IpfClientApiProxyEtw_AddReg]
HKLM,%IpfClientApiProxyEtwProviderKey%,,%REG_SZ%,"ClientApiProxyEtwProvider"
HKLM,%IpfClientApiProxyEtwProviderKey%,"ResourceFileName",%REG_EXPAND_SZ%,"%13%\ClientApiProxy.dll"
HKLM,%IpfClientApiProxyEtwProviderKey%,"MessageFileName",%REG_EXPAND_SZ%,"%13%\ClientApiProxy.dll"
HKLM,%IpfClientApiProxyEtwProviderKey%,"Enabled",%REG_DWORD%,1

[CoreProviderEtw_AddReg]
HKLM,%IpfCoreProviderEtwProviderKey%,,%REG_SZ%,"CoreProviderEtwProvider"
HKLM,%IpfCoreProviderEtwProviderKey%,"ResourceFileName",%REG_EXPAND_SZ%,"%13%\CoreProvider.dll"
HKLM,%IpfCoreProviderEtwProviderKey%,"MessageFileName",%REG_EXPAND_SZ%,"%13%\CoreProvider.dll"
HKLM,%IpfCoreProviderEtwProviderKey%,"Enabled",%REG_DWORD%,1

[CoreApiProxyEtw_AddReg]
HKLM,%IpfCoreApiProxyEtwProviderKey%,,%REG_SZ%,"CoreApiProxyEtwProvider"
HKLM,%IpfCoreApiProxyEtwProviderKey%,"ResourceFileName",%REG_EXPAND_SZ%,"%13%\CoreApiProxy.dll"
HKLM,%IpfCoreApiProxyEtwProviderKey%,"MessageFileName",%REG_EXPAND_SZ%,"%13%\CoreApiProxy.dll"
HKLM,%IpfCoreApiProxyEtwProviderKey%,"Enabled",%REG_DWORD%,1

;-------------------------------------------------------------------------------
; Install Interfaces Section
;-------------------------------------------------------------------------------
[IpfEfInstall.NTamd64.Interfaces]
AddInterface = {9DD57132-5929-476A-8CCB-9D42B1E4ABED},,IpfEfInstallInterface,0
AddInterface = %ProviderInterface%,,IpfBaseProviderSwInstallInterface,0

[IpfEfInstallInterface]
AddReg = IpfEfInstallInterface_AddReg

[IpfEfInstallInterface_AddReg]
HKR,,"InstallDir",,%13%

[IpfBaseProviderSwInstallInterface]
AddReg = IpfBaseProviderSwInstallInterface_AddReg

[IpfBaseProviderSwInstallInterface_AddReg]
HKR,,"ProviderDir",,%13%
HKR,,"ProviderPackages",,%ProviderList%


;----------------------------------------------------------------------
; Strings and Constants
;----------------------------------------------------------------------
[Strings]
INTEL = "Intel"
ProviderInterface = "{73FDD548-3C00-4279-B021-D0655F0B1E41}"
DiskName = "Intel(R) Innovation Platform Framework Extensible Framework"
IpfEf_FriendlyName = "Intel(R) Innovation Platform Framework Extensible Framework"
IpfNamespaceMgrEtwProviderKey="SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{1DD31227-D298-4421-AF2F-38DCCB983788}"
IpfClientApiProxyEtwProviderKey="SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{AFE177A4-3980-4E7F-810C-54E7911AFBDF}"
IpfCoreProviderEtwProviderKey="SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{4A55034C-F29F-4934-ADEA-4EB54899BFF2}"
IpfCoreApiProxyEtwProviderKey="SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{3C8700E5-41B0-4434-B29B-D7Eb8491B9E3}"
ProviderList = "CoreProvider.dll"

REG_SZ                          = 0x00000000
REG_DWORD                       = 0x00010001
REG_EXPAND_SZ                   = 0x00020000
