mirror of
https://github.com/OpenFOAM/ThirdParty-6.git
synced 2025-12-08 06:57:43 +00:00
ParaView-5.0.1: Added the source-tree to ThirdParty-dev and patched as described in the README file
Resolves bug-report http://bugs.openfoam.org/view.php?id=2098
This commit is contained in:
@ -0,0 +1,110 @@
|
||||
/*=========================================================================
|
||||
|
||||
Program: ParaView
|
||||
Module: vtkSMDeserializerXML.cxx
|
||||
|
||||
Copyright (c) Kitware, Inc.
|
||||
All rights reserved.
|
||||
See Copyright.txt or http://www.paraview.org/HTML/Copyright.html 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 "vtkSMDeserializerXML.h"
|
||||
|
||||
#include "vtkObjectFactory.h"
|
||||
#include "vtkPVXMLElement.h"
|
||||
#include "vtkSmartPointer.h"
|
||||
#include "vtkSMProxy.h"
|
||||
#include "vtkSMProxyLocator.h"
|
||||
#include "vtkSMSessionProxyManager.h"
|
||||
#include "vtkSMSession.h"
|
||||
|
||||
vtkStandardNewMacro(vtkSMDeserializerXML);
|
||||
//----------------------------------------------------------------------------
|
||||
vtkSMDeserializerXML::vtkSMDeserializerXML()
|
||||
{
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
vtkSMDeserializerXML::~vtkSMDeserializerXML()
|
||||
{
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
vtkSMProxy* vtkSMDeserializerXML::NewProxy(vtkTypeUInt32 id,
|
||||
vtkSMProxyLocator* locator)
|
||||
{
|
||||
vtkPVXMLElement* elem = this->LocateProxyElement(id);
|
||||
if (!elem)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
const char* group = elem->GetAttribute("group");
|
||||
const char* type = elem->GetAttribute("type");
|
||||
if (!type)
|
||||
{
|
||||
vtkErrorMacro("Could not create proxy from element, missing 'type'.");
|
||||
return 0;
|
||||
}
|
||||
|
||||
vtkSMProxy* proxy;
|
||||
proxy = this->CreateProxy(group, type);
|
||||
if (!proxy)
|
||||
{
|
||||
vtkErrorMacro("Could not create a proxy of group: "
|
||||
<< (group? group : "(null)")
|
||||
<< " type: " << type);
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!this->LoadProxyState(elem, proxy, locator))
|
||||
{
|
||||
vtkErrorMacro("Failed to load state correctly.");
|
||||
proxy->Delete();
|
||||
return 0;
|
||||
}
|
||||
|
||||
this->CreatedNewProxy(id, proxy);
|
||||
return proxy;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
vtkSMProxy* vtkSMDeserializerXML::CreateProxy(const char* xmlgroup,
|
||||
const char* xmlname,
|
||||
const char* subProxyName /*=NULL*/)
|
||||
{
|
||||
vtkSMSessionProxyManager* pxm = this->GetSessionProxyManager();
|
||||
vtkSMProxy* proxy = pxm->NewProxy(xmlgroup, xmlname, subProxyName);
|
||||
return proxy;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
vtkPVXMLElement* vtkSMDeserializerXML::LocateProxyElement(vtkTypeUInt32 vtkNotUsed(id))
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
int vtkSMDeserializerXML::LoadProxyState( vtkPVXMLElement* element,
|
||||
vtkSMProxy* proxy,
|
||||
vtkSMProxyLocator* locator)
|
||||
{
|
||||
return proxy->LoadXMLState(element, locator);
|
||||
}
|
||||
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
void vtkSMDeserializerXML::CreatedNewProxy(vtkTypeUInt32 vtkNotUsed(id),
|
||||
vtkSMProxy* vtkNotUsed(proxy))
|
||||
{
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
void vtkSMDeserializerXML::PrintSelf(ostream& os, vtkIndent indent)
|
||||
{
|
||||
this->Superclass::PrintSelf(os, indent);
|
||||
}
|
||||
Reference in New Issue
Block a user