xref: /aosp_15_r20/external/pytorch/torch/csrc/Event.h (revision da0073e96a02ea20f0ac840b70461e3646d07c45)
1 #ifndef THP_EVENT_INC
2 #define THP_EVENT_INC
3 
4 #include <c10/core/Event.h>
5 #include <torch/csrc/python_headers.h>
6 
7 struct TORCH_API THPEvent {
8   PyObject_HEAD c10::Event event;
9 };
10 extern PyObject* THPEventClass;
11 TORCH_API extern PyTypeObject THPEventType;
12 
13 TORCH_API void THPEvent_init(PyObject* module);
14 TORCH_API PyObject* THPEvent_new(
15     c10::DeviceType device_type,
16     c10::EventFlag flag);
THPEvent_Check(PyObject * obj)17 inline bool THPEvent_Check(PyObject* obj) {
18   return THPEventClass && PyObject_IsInstance(obj, THPEventClass);
19 }
20 
21 #endif // THP_EVENT_INC
22