Process Hacker
settings.c File Reference
#include <phapp.h>
#include "mxml/mxml.h"
#include <settings.h>
#include <settingsp.h>

Go to the source code of this file.

Macros

#define PH_SETTINGS_PRIVATE
 
#define ADD_SETTING_WRAPPER(Type, Name, DefaultValue)
 
#define PhpAddStringSetting(A, B)   ADD_SETTING_WRAPPER(StringSettingType, A, B)
 
#define PhpAddIntegerSetting(A, B)   ADD_SETTING_WRAPPER(IntegerSettingType, A, B)
 
#define PhpAddIntegerPairSetting(A, B)   ADD_SETTING_WRAPPER(IntegerPairSettingType, A, B)
 
#define UPDATE_INTEGER_CS(Name)   (PhCs##Name = PhGetIntegerSetting(L#Name))
 

Functions

VOID PhSettingsInitialization (VOID)
 
VOID PhUpdateCachedSettings (VOID)
 
BOOLEAN NTAPI PhpSettingsHashtableCompareFunction (_In_ PVOID Entry1, _In_ PVOID Entry2)
 
ULONG NTAPI PhpSettingsHashtableHashFunction (_In_ PVOID Entry)
 
_May_raise_ ULONG PhGetIntegerSetting (_In_ PWSTR Name)
 
_May_raise_ PH_INTEGER_PAIR PhGetIntegerPairSetting (_In_ PWSTR Name)
 
_May_raise_ PPH_STRING PhGetStringSetting (_In_ PWSTR Name)
 
_May_raise_ VOID PhSetIntegerSetting (_In_ PWSTR Name, _In_ ULONG Value)
 
_May_raise_ VOID PhSetIntegerPairSetting (_In_ PWSTR Name, _In_ PH_INTEGER_PAIR Value)
 
_May_raise_ VOID PhSetStringSetting (_In_ PWSTR Name, _In_ PWSTR Value)
 
_May_raise_ VOID PhSetStringSetting2 (_In_ PWSTR Name, _In_ PPH_STRINGREF Value)
 
VOID PhpFreeIgnoredSetting (_In_ PPH_SETTING Setting)
 
VOID PhpClearIgnoredSettings (VOID)
 
VOID PhClearIgnoredSettings (VOID)
 
VOID PhConvertIgnoredSettings (VOID)
 
mxml_type_t PhpSettingsLoadCallback (_In_ mxml_node_t *node)
 
NTSTATUS PhLoadSettings (_In_ PWSTR FileName)
 
char * PhpSettingsSaveCallback (_In_ mxml_node_t *node, _In_ int position)
 
mxml_node_tPhpCreateSettingElement (_Inout_ mxml_node_t *ParentNode, _In_ PPH_STRINGREF SettingName, _In_ PPH_STRINGREF SettingValue)
 
NTSTATUS PhSaveSettings (_In_ PWSTR FileName)
 
VOID PhResetSettings (VOID)
 
VOID PhAddSettings (_In_ PPH_SETTING_CREATE Settings, _In_ ULONG NumberOfSettings)
 

Variables

PPH_HASHTABLE PhSettingsHashtable
 
PH_QUEUED_LOCK PhSettingsLock = PH_QUEUED_LOCK_INIT
 
PPH_LIST PhIgnoredSettings
 

Macro Definition Documentation

#define ADD_SETTING_WRAPPER (   Type,
  Name,
  DefaultValue 
)
Value:
{ \
static PH_STRINGREF name = PH_STRINGREF_INIT(Name); \
static PH_STRINGREF defaultValue = PH_STRINGREF_INIT(DefaultValue); \
PhpAddSetting(Type, &name, &defaultValue); \
}

Definition at line 51 of file settings.c.

#define PH_SETTINGS_PRIVATE

Definition at line 37 of file settings.c.

#define PhpAddIntegerPairSetting (   A,
 
)    ADD_SETTING_WRAPPER(IntegerPairSettingType, A, B)

Definition at line 60 of file settings.c.

#define PhpAddIntegerSetting (   A,
 
)    ADD_SETTING_WRAPPER(IntegerSettingType, A, B)

Definition at line 59 of file settings.c.

#define PhpAddStringSetting (   A,
 
)    ADD_SETTING_WRAPPER(StringSettingType, A, B)

Definition at line 58 of file settings.c.

#define UPDATE_INTEGER_CS (   Name)    (PhCs##Name = PhGetIntegerSetting(L#Name))

Function Documentation

VOID PhAddSettings ( _In_ PPH_SETTING_CREATE  Settings,
_In_ ULONG  NumberOfSettings 
)

Definition at line 1015 of file settings.c.

VOID PhClearIgnoredSettings ( VOID  )

Definition at line 684 of file settings.c.

VOID PhConvertIgnoredSettings ( VOID  )

Definition at line 691 of file settings.c.

_May_raise_ PH_INTEGER_PAIR PhGetIntegerPairSetting ( _In_ PWSTR  Name)

Definition at line 480 of file settings.c.

_May_raise_ ULONG PhGetIntegerSetting ( _In_ PWSTR  Name)

Definition at line 449 of file settings.c.

_May_raise_ PPH_STRING PhGetStringSetting ( _In_ PWSTR  Name)

Definition at line 511 of file settings.c.

NTSTATUS PhLoadSettings ( _In_ PWSTR  FileName)

Definition at line 742 of file settings.c.

VOID PhpClearIgnoredSettings ( VOID  )

Definition at line 666 of file settings.c.

mxml_node_t* PhpCreateSettingElement ( _Inout_ mxml_node_t ParentNode,
_In_ PPH_STRINGREF  SettingName,
_In_ PPH_STRINGREF  SettingValue 
)

Definition at line 882 of file settings.c.

VOID PhpFreeIgnoredSetting ( _In_ PPH_SETTING  Setting)

Definition at line 656 of file settings.c.

BOOLEAN NTAPI PhpSettingsHashtableCompareFunction ( _In_ PVOID  Entry1,
_In_ PVOID  Entry2 
)

Definition at line 288 of file settings.c.

ULONG NTAPI PhpSettingsHashtableHashFunction ( _In_ PVOID  Entry)

Definition at line 299 of file settings.c.

mxml_type_t PhpSettingsLoadCallback ( _In_ mxml_node_t node)

Definition at line 735 of file settings.c.

char* PhpSettingsSaveCallback ( _In_ mxml_node_t node,
_In_ int  position 
)

Definition at line 861 of file settings.c.

VOID PhResetSettings ( VOID  )

Definition at line 995 of file settings.c.

NTSTATUS PhSaveSettings ( _In_ PWSTR  FileName)

Definition at line 910 of file settings.c.

_May_raise_ VOID PhSetIntegerPairSetting ( _In_ PWSTR  Name,
_In_ PH_INTEGER_PAIR  Value 
)

Definition at line 579 of file settings.c.

_May_raise_ VOID PhSetIntegerSetting ( _In_ PWSTR  Name,
_In_ ULONG  Value 
)

Definition at line 554 of file settings.c.

_May_raise_ VOID PhSetStringSetting ( _In_ PWSTR  Name,
_In_ PWSTR  Value 
)

Definition at line 604 of file settings.c.

_May_raise_ VOID PhSetStringSetting2 ( _In_ PWSTR  Name,
_In_ PPH_STRINGREF  Value 
)

Definition at line 630 of file settings.c.

VOID PhSettingsInitialization ( VOID  )

Definition at line 62 of file settings.c.

VOID PhUpdateCachedSettings ( VOID  )

Definition at line 230 of file settings.c.

Variable Documentation

PPH_LIST PhIgnoredSettings

Definition at line 46 of file settings.c.

PPH_HASHTABLE PhSettingsHashtable

Definition at line 43 of file settings.c.

Definition at line 44 of file settings.c.