Warning, file /include/opencascade/Graphic3d_GraphicDriverFactory.hxx was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef _Graphic3d_GraphicDriverFactory_HeaderFile
0015 #define _Graphic3d_GraphicDriverFactory_HeaderFile
0016
0017 #include <NCollection_List.hxx>
0018 #include <Standard_Type.hxx>
0019 #include <TCollection_AsciiString.hxx>
0020
0021 class Aspect_DisplayConnection;
0022 class Graphic3d_GraphicDriver;
0023 class Graphic3d_GraphicDriverFactory;
0024 typedef NCollection_List<Handle(Graphic3d_GraphicDriverFactory)> Graphic3d_GraphicDriverFactoryList;
0025
0026
0027 class Graphic3d_GraphicDriverFactory : public Standard_Transient
0028 {
0029 DEFINE_STANDARD_RTTIEXT(Graphic3d_GraphicDriverFactory, Standard_Transient)
0030 public:
0031
0032
0033
0034
0035 Standard_EXPORT static void RegisterFactory (const Handle(Graphic3d_GraphicDriverFactory)& theFactory,
0036 bool theIsPreferred = false);
0037
0038
0039 Standard_EXPORT static void UnregisterFactory (const TCollection_AsciiString& theName);
0040
0041
0042 Standard_EXPORT static Handle(Graphic3d_GraphicDriverFactory) DefaultDriverFactory();
0043
0044
0045 Standard_EXPORT static const Graphic3d_GraphicDriverFactoryList& DriverFactories();
0046
0047 public:
0048
0049
0050 virtual Handle(Graphic3d_GraphicDriver) CreateDriver (const Handle(Aspect_DisplayConnection)& theDisp) = 0;
0051
0052
0053 const TCollection_AsciiString& Name() const { return myName; }
0054
0055 protected:
0056
0057
0058 Standard_EXPORT Graphic3d_GraphicDriverFactory (const TCollection_AsciiString& theName);
0059
0060 protected:
0061
0062 TCollection_AsciiString myName;
0063
0064 };
0065
0066 #endif