VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
vtkDaxObjectFactory.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: ObjectFactory.cxx
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
16 #ifndef __vtkDaxObjectFactory_h
17 #define __vtkDaxObjectFactory_h
18 
19 #include "vtkAcceleratorsDaxModule.h" //required for correct implementation
20 
21 #include "vtkObjectFactory.h"
22 #include "vtkObjectFactoryCollection.h" //required to make a factory
23 #include "vtkOverrideInformation.h" //required to make a factory
24 #include "vtkOverrideInformationCollection.h" //required to make a factory
25 #include "vtkVersion.h" //required to make a factory
26 
27 #include "vtkDaxThreshold.h" //required to overload Threshold
29 
30 #include "vtkDaxMarchingCubes.h" //required to overload Marching Cubes
32 
33 class VTKACCELERATORSDAX_EXPORT vtkDaxObjectFactory : public vtkObjectFactory
34 {
35 public:
36  static vtkDaxObjectFactory* New();
37 
38  virtual const char* GetVTKSourceVersion() { return VTK_SOURCE_VERSION; }
39  const char* GetDescription() { return "Dax Object Factory"; }
41 
42  void PrintSelf(ostream& os, vtkIndent indent)
43  {
44  this->Superclass::PrintSelf(os,indent);
45  }
46 
47 protected:
49 
50 private:
51  vtkDaxObjectFactory(const vtkDaxObjectFactory&); // Not implemented
52  void operator=(const vtkDaxObjectFactory&); // Not implemented
53 };
54 
55 
57 {
58  this->RegisterOverride("vtkThreshold",
59  "vtkDaxThreshold",
60  "Override threshold with Dax threshold version",
61  1,
62  vtkObjectFactoryCreatevtkDaxThreshold);
63 
64  this->RegisterOverride("vtkMarchingCubes",
65  "vtkDaxMarchingCubes",
66  "Override marching cubes Dax threshold version",
67  1,
68  vtkObjectFactoryCreatevtkDaxThreshold);
69 }
70 
72 #endif
typedef void(APIENTRYP PFNGLBLENDCOLORPROC)(GLclampf red
const char * GetDescription()
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:619
#define VTK_SOURCE_VERSION
Definition: vtkVersion.h:34
#define VTK_CREATE_CREATE_FUNCTION(classname)
a simple class to control print indentation
Definition: vtkIndent.h:38
#define vtkStandardNewMacro(thisClass)
virtual const char * GetVTKSourceVersion()
abstract base class for vtkObjectFactories
void RegisterOverride(const char *classOverride, const char *overrideClassName, const char *description, int enableFlag, CreateFunction createFunction)