VoltMod
C++23 framework for CS2 server plugins
Loading...
Searching...
No Matches
VoltMod::Internal::InstalledHook< HookKind, Object, Ret, Args > Class Template Reference

#include <Hook.hpp>

Public Member Functions

template<class BeforeHandler , class AfterHandler >
 InstalledHook (BeforeHandler &&before, AfterHandler &&after)
 
 InstalledHook (const InstalledHook &)=delete
 
InstalledHook & operator= (const InstalledHook &)=delete
 

Public Attributes

HookKind< Object, Ret, Args... > Hook
 

Detailed Description

template<template< class, class, class... > class HookKind, class Object, class Ret, class... Args>
class VoltMod::Internal::InstalledHook< HookKind, Object, Ret, Args >

KHook storage and the before/after handlers it invokes.

The object is heap allocated and non-polymorphic because KHook stores its address and invokes RunBefore and RunAfter through raw member addresses.

Template Parameters
HookKindKHook::Virtual or KHook::Member.

Definition at line 55 of file Hook.hpp.

Constructor & Destructor Documentation

◆ InstalledHook() [1/2]

template<template< class, class, class... > class HookKind, class Object , class Ret , class... Args>
VoltMod::Internal::InstalledHook< HookKind, Object, Ret, Args >::InstalledHook ( BeforeHandler &&  before,
AfterHandler &&  after 
)
inline

Either handler may be nullptr, but not both.

Definition at line 60 of file Hook.hpp.

References VoltMod::Internal::InstalledHook< HookKind, Object, Ret, Args >::Hook.

◆ InstalledHook() [2/2]

template<template< class, class, class... > class HookKind, class Object , class Ret , class... Args>
VoltMod::Internal::InstalledHook< HookKind, Object, Ret, Args >::InstalledHook ( const InstalledHook< HookKind, Object, Ret, Args > &  )
delete

Member Function Documentation

◆ operator=()

template<template< class, class, class... > class HookKind, class Object , class Ret , class... Args>
InstalledHook & VoltMod::Internal::InstalledHook< HookKind, Object, Ret, Args >::operator= ( const InstalledHook< HookKind, Object, Ret, Args > &  )
delete

References VoltMod::ReadFile().

Member Data Documentation

◆ Hook

template<template< class, class, class... > class HookKind, class Object , class Ret , class... Args>
HookKind<Object, Ret, Args...> VoltMod::Internal::InstalledHook< HookKind, Object, Ret, Args >::Hook

The documentation for this class was generated from the following file: