@@ -20,166 +20,14 @@ template<
2020ComPtr<TDelegateInterface> Callback (
2121 TCallback callback
2222);
23- template <
24- typename TDelegateInterface,
25- typename TCallbackObject
26- >
27- ComPtr<TDelegateInterface> Callback (
28- _ In_ TCallbackObject * object,
29- _ In_ HRESULT (TCallbackObject::* method)()
30- );
31- template <
32- typename TDelegateInterface,
33- typename TCallbackObject,
34- typename TArg1
35- >
36- ComPtr<TDelegateInterface> Callback (
37- _ In_ TCallbackObject * object,
38- _ In_ HRESULT (TCallbackObject::* method)(TArg1)
39- );
40- template <
41- typename TDelegateInterface,
42- typename TCallbackObject,
43- typename TArg1,
44- typename TArg2
45- >
46- ComPtr<TDelegateInterface> Callback (
47- _ In_ TCallbackObject * object,
48- _ In_ HRESULT (TCallbackObject::* method)(TArg1,
49- TArg2)
50- );
51- template <
52- typename TDelegateInterface,
53- typename TCallbackObject,
54- typename TArg1,
55- typename TArg2,
56- typename TArg3
57- >
58- ComPtr<TDelegateInterface> Callback (
59- _ In_ TCallbackObject * object,
60- _ In_ HRESULT (TCallbackObject::* method)(TArg1,
61- TArg2,
62- TArg3)
63- );
64- template <
65- typename TDelegateInterface,
66- typename TCallbackObject,
67- typename TArg1,
68- typename TArg2,
69- typename TArg3,
70- typename TArg4
71- >
72- ComPtr<TDelegateInterface> Callback (
73- _ In_ TCallbackObject * object,
74- _ In_ HRESULT (TCallbackObject::* method)(TArg1,
75- TArg2,
76- TArg3,
77- TArg4)
78- );
79- template <
80- typename TDelegateInterface,
81- typename TCallbackObject,
82- typename TArg1,
83- typename TArg2,
84- typename TArg3,
85- typename TArg4,
86- typename TArg5
87- >
88- ComPtr<TDelegateInterface> Callback (
89- _ In_ TCallbackObject * object,
90- _ In_ HRESULT (TCallbackObject::* method)(TArg1,
91- TArg2,
92- TArg3,
93- TArg4,
94- TArg5)
95- );
96- template <
97- typename TDelegateInterface,
98- typename TCallbackObject,
99- typename TArg1,
100- typename TArg2,
101- typename TArg3,
102- typename TArg4,
103- typename TArg5,
104- typename TArg6
105- >
106- ComPtr<TDelegateInterface> Callback (
107- _ In_ TCallbackObject * object,
108- _ In_ HRESULT (TCallbackObject::* method)(TArg1,
109- TArg2,
110- TArg3,
111- TArg4,
112- TArg5,
113- TArg6)
114- );
11523template <
11624 typename TDelegateInterface,
11725 typename TCallbackObject,
118- typename TArg1,
119- typename TArg2,
120- typename TArg3,
121- typename TArg4,
122- typename TArg5,
123- typename TArg6,
124- typename TArg7
26+ typename ... TArgs
12527>
12628ComPtr<TDelegateInterface> Callback (
12729 _ In_ TCallbackObject * object,
128- _ In_ HRESULT (TCallbackObject::* method)(TArg1,
129- TArg2,
130- TArg3,
131- TArg4,
132- TArg5,
133- TArg6,
134- TArg7)
135- );
136- template <
137- typename TDelegateInterface,
138- typename TCallbackObject,
139- typename TArg1,
140- typename TArg2,
141- typename TArg3,
142- typename TArg4,
143- typename TArg5,
144- typename TArg6,
145- typename TArg7,
146- typename TArg8
147- >
148- ComPtr<TDelegateInterface> Callback (
149- _ In_ TCallbackObject * object,
150- _ In_ HRESULT (TCallbackObject::* method)(TArg1,
151- TArg2,
152- TArg3,
153- TArg4,
154- TArg5,
155- TArg6,
156- TArg7,
157- TArg8)
158- );
159- template <
160- typename TDelegateInterface,
161- typename TCallbackObject,
162- typename TArg1,
163- typename TArg2,
164- typename TArg3,
165- typename TArg4,
166- typename TArg5,
167- typename TArg6,
168- typename TArg7,
169- typename TArg8,
170- typename TArg9
171- >
172- ComPtr<TDelegateInterface> Callback (
173- _ In_ TCallbackObject * object,
174- _ In_ HRESULT (TCallbackObject::* method)(TArg1,
175- TArg2,
176- TArg3,
177- TArg4,
178- TArg5,
179- TArg6,
180- TArg7,
181- TArg8,
182- TArg9)
30+ _ In_ HRESULT (TCallbackObject::* method)(TArgs...)
18331);
18432```
18533
@@ -194,32 +42,8 @@ A template parameter that specifies the type of an object that represents an obj
19442* TCallbackObject* <br />
19543A template parameter that specifies the object whose member function is the method to call when an event occurs.
19644
197- * TArg1* <br />
198- A template parameter that specifies the type of the first callback method argument.
199-
200- * TArg2* <br />
201- A template parameter that specifies the type of the second callback method argument.
202-
203- * TArg3* <br />
204- A template parameter that specifies the type of the third callback method argument.
205-
206- * TArg4* <br />
207- A template parameter that specifies the type of the fourth callback method argument.
208-
209- * TArg5* <br />
210- A template parameter that specifies the type of the fifth callback method argument.
211-
212- * TArg6* <br />
213- A template parameter that specifies the type of the sixth callback method argument.
214-
215- * TArg7* <br />
216- A template parameter that specifies the type of the seventh callback method argument.
217-
218- * TArg8* <br />
219- A template parameter that specifies the type of the eighth callback method argument.
220-
221- * TArg9* <br />
222- A template parameter that specifies the type of the ninth callback method argument.
45+ * TArgs* <br />
46+ A template parameter pack that specifies the types of the callback method arguments.
22347
22448* callback* <br />
22549An object that represents the callback object and its member function.
0 commit comments