tinyWinGraphicsPipe.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. // Filename: tinyWinGraphicsPipe.h
  2. // Created by: drose (06May08)
  3. //
  4. ////////////////////////////////////////////////////////////////////
  5. //
  6. // PANDA 3D SOFTWARE
  7. // Copyright (c) Carnegie Mellon University. All rights reserved.
  8. //
  9. // All use of this software is subject to the terms of the revised BSD
  10. // license. You should have received a copy of this license along
  11. // with this source code in a file named "LICENSE."
  12. //
  13. ////////////////////////////////////////////////////////////////////
  14. #ifndef TINYWINGRAPHICSPIPE_H
  15. #define TINYWINGRAPHICSPIPE_H
  16. #include "pandabase.h"
  17. #ifdef WIN32
  18. #include "winGraphicsPipe.h"
  19. #include "tinyGraphicsStateGuardian.h"
  20. ////////////////////////////////////////////////////////////////////
  21. // Class : TinyWinGraphicsPipe
  22. // Description : This graphics pipe represents the interface for
  23. // creating TinyPanda graphics windows on a
  24. // Windows-based client.
  25. ////////////////////////////////////////////////////////////////////
  26. class EXPCL_TINYDISPLAY TinyWinGraphicsPipe : public WinGraphicsPipe {
  27. public:
  28. TinyWinGraphicsPipe();
  29. virtual ~TinyWinGraphicsPipe();
  30. virtual string get_interface_name() const;
  31. static PT(GraphicsPipe) pipe_constructor();
  32. protected:
  33. virtual PT(GraphicsOutput) make_output(const string &name,
  34. const FrameBufferProperties &fb_prop,
  35. const WindowProperties &win_prop,
  36. int flags,
  37. GraphicsEngine *engine,
  38. GraphicsStateGuardian *gsg,
  39. GraphicsOutput *host,
  40. int retry,
  41. bool &precertify);
  42. public:
  43. static TypeHandle get_class_type() {
  44. return _type_handle;
  45. }
  46. static void init_type() {
  47. WinGraphicsPipe::init_type();
  48. register_type(_type_handle, "TinyWinGraphicsPipe",
  49. WinGraphicsPipe::get_class_type());
  50. }
  51. virtual TypeHandle get_type() const {
  52. return get_class_type();
  53. }
  54. virtual TypeHandle force_init_type() {init_type(); return get_class_type();}
  55. private:
  56. static TypeHandle _type_handle;
  57. };
  58. #include "tinyWinGraphicsPipe.I"
  59. #endif // WIN32
  60. #endif