46#if defined(HAVE_X11) && !defined(CPPPARSER)
50#if defined(WIN32) && !defined(CPPPARSER)
59 virtual void output(std::ostream &out)
const;
61 INLINE
size_t get_handle()
const;
70 static void init_type() {
71 OSHandle::init_type();
73 OSHandle::get_class_type());
76 return get_class_type();
78 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
87 virtual void output(std::ostream &out)
const;
89 INLINE
const Filename &get_filename()
const;
98 static void init_type() {
99 OSHandle::init_type();
100 register_type(_type_handle,
"NativeWindowHandle::SubprocessHandle",
101 OSHandle::get_class_type());
104 return get_class_type();
106 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
112#if defined(HAVE_X11) && !defined(CPPPARSER)
113 class EXPCL_PANDA_DISPLAY X11Handle :
public OSHandle {
115 INLINE X11Handle(X11_Window handle);
117 virtual void output(std::ostream &out)
const;
119 INLINE X11_Window get_handle()
const;
128 static void init_type() {
129 OSHandle::init_type();
131 OSHandle::get_class_type());
134 return get_class_type();
136 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
144#if defined(WIN32) && !defined(CPPPARSER)
145 class EXPCL_PANDA_DISPLAY WinHandle :
public OSHandle {
147 INLINE WinHandle(HWND handle);
149 virtual void output(std::ostream &out)
const;
151 INLINE HWND get_handle()
const;
160 static void init_type() {
161 OSHandle::init_type();
163 OSHandle::get_class_type());
166 return get_class_type();
168 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
179 static void init_type() {
180 WindowHandle::init_type();
182 WindowHandle::get_class_type());
184 IntHandle::init_type();
185 SubprocessHandle::init_type();
186#if defined(HAVE_X11) && !defined(CPPPARSER)
187 X11Handle::init_type();
189#if defined(WIN32) && !defined(CPPPARSER)
190 WinHandle::init_type();
194 return get_class_type();
196 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...