/*========================================================================= Program: Visualization Toolkit Module: @vtk-module@ObjectFactory.cxx Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen All rights reserved. See Copyright.txt or http://www.kitware.com/Copyright.htm for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notice for more information. =========================================================================*/ #include "@vtk-module@ObjectFactory.h" #include "vtkVersion.h" // Include all of the classes we want to create overrides for. @_vtk_override_includes@ vtkStandardNewMacro(@vtk-module@ObjectFactory) // Now create the functions to create overrides with. @_vtk_override_creates@ @vtk-module@ObjectFactory::@vtk-module@ObjectFactory() { @_vtk_override_do@ } const char * @vtk-module@ObjectFactory::GetVTKSourceVersion() { return VTK_SOURCE_VERSION; } void @vtk-module@ObjectFactory::PrintSelf(ostream &os, vtkIndent indent) { this->Superclass::PrintSelf(os, indent); } // Registration of object factories. static unsigned int @vtk-module@Count; @VTK-MODULE@_EXPORT void @vtk-module@_AutoInit_Construct() { if(++@vtk-module@Count == 1) { @vtk-module@ObjectFactory* factory = @vtk-module@ObjectFactory::New(); if (factory) { // vtkObjectFactory keeps a reference to the "factory", vtkObjectFactory::RegisterFactory(factory); factory->Delete(); } } } @VTK-MODULE@_EXPORT void @vtk-module@_AutoInit_Destruct() { if(--@vtk-module@Count == 0) { // Do not call vtkObjectFactory::UnRegisterFactory because // vtkObjectFactory.cxx statically unregisters all factories. } }