VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtVrvControlFactory_v0.h
Go to the documentation of this file.
1 
2 /*******************************************************************************
3 ** Copyright (c) 2010 MAK Technologies, Inc.
4 ** All rights reserved.
5 *******************************************************************************/
6 
9 
10 #pragma once
11 
13 
14 #include <map>
15 
16 namespace vrvControlToolkit
17 {
18 
20  {
21  public:
24 
25  virtual DtVrvControl_v0* create()=0;
26  };
27 
28  template <class ControlType>
30  {
31  public:
34 
35  virtual DtVrvControl_v0* create();
36  };
37 
38  template< class ControlType>
40  {
41  return new ControlType();
42  }
43 
45  {
46  public:
48 
49  DtVrvControl_v0* create(const char* buffer, int size);
50 
51  typedef std::pair<DtVrvControlTypeEnum_v0, int> TypeVersionPair;
52  virtual void addCreator(const TypeVersionPair& type, DtVctBaseControlCreator_v0* creator);
53 
54  protected:
55  virtual void initialize();
56 
58  virtual ~DtVrvControlFactory_v0();
59 
61 
62  typedef std::map<TypeVersionPair, DtVctBaseControlCreator_v0*> ControlCreatorMap;
64  };
65 
66 } //vrvControlToolkit::
67 
68 #include <vrvVrl/DtVrvControlFactory_v0.inl>
static DtVrvControlFactory_v0 * theControlFactory
Definition: DtVrvControlFactory_v0.h:60
Definition: DtVrvControlFactory_v0.h:44
std::map< TypeVersionPair, DtVctBaseControlCreator_v0 * > ControlCreatorMap
Definition: DtVrvControlFactory_v0.h:62
virtual DtVrvControl_v0 * create()
Definition: DtVrvControlFactory_v0.h:39
Definition: DtVrvControlFactory_v0.h:19
static DtVrvControlFactory_v0 & instance()
virtual ~DtVctBaseControlCreator_v0()
Definition: DtVrvControlFactory_v0.h:23
voidpf void uLong size
Definition: ioapi.h:39
DtVctBaseControlCreator_v0()
Definition: DtVrvControlFactory_v0.h:22
virtual DtVrvControl_v0 * create()=0
DtVrvControl_v0 * create(const char *buffer, int size)
std::pair< DtVrvControlTypeEnum_v0, int > TypeVersionPair
Definition: DtVrvControlFactory_v0.h:51
ControlCreatorMap myCreatorMap
Definition: DtVrvControlFactory_v0.h:63
DtVctControlCreator_v0()
Definition: DtVrvControlFactory_v0.h:32
virtual void addCreator(const TypeVersionPair &type, DtVctBaseControlCreator_v0 *creator)
Definition: DtVrvControlFactory_v0.h:29
virtual ~DtVctControlCreator_v0()
Definition: DtVrvControlFactory_v0.h:33
Definition: vrvControlToolkitDataTypes_v0.h:69

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)