mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-11 22:54:34 +00:00
Engine directory for ticket #1
This commit is contained in:
parent
352279af7a
commit
7dbfe6994d
3795 changed files with 1363358 additions and 0 deletions
59
Engine/lib/collada/src/dae/daeStandardURIResolver.cpp
Normal file
59
Engine/lib/collada/src/dae/daeStandardURIResolver.cpp
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
/*
|
||||
* Copyright 2006 Sony Computer Entertainment Inc.
|
||||
*
|
||||
* Licensed under the SCEA Shared Source License, Version 1.0 (the "License"); you may not use this
|
||||
* file except in compliance with the License. You may obtain a copy of the License at:
|
||||
* http://research.scea.com/scea_shared_source_license.html
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software distributed under the License
|
||||
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing permissions and limitations under the
|
||||
* License.
|
||||
*/
|
||||
|
||||
#include <sstream>
|
||||
#include <dae.h>
|
||||
#include <dae/daeStandardURIResolver.h>
|
||||
#include <dae/daeDatabase.h>
|
||||
#include <dae/daeURI.h>
|
||||
#include <dae/daeIOPlugin.h>
|
||||
#include <dae/daeErrorHandler.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
daeStandardURIResolver::daeStandardURIResolver(DAE& dae)
|
||||
: daeURIResolver(dae) { }
|
||||
|
||||
daeStandardURIResolver::~daeStandardURIResolver() { }
|
||||
|
||||
daeString
|
||||
daeStandardURIResolver::getName()
|
||||
{
|
||||
return "XMLResolver";
|
||||
}
|
||||
|
||||
namespace {
|
||||
void printErrorMsg(const daeURI& uri) {
|
||||
ostringstream msg;
|
||||
msg << "daeStandardURIResolver::resolveElement() - Failed to resolve " << uri.str() << endl;
|
||||
daeErrorHandler::get()->handleError(msg.str().c_str());
|
||||
}
|
||||
}
|
||||
|
||||
daeElement* daeStandardURIResolver::resolveElement(const daeURI& uri) {
|
||||
daeDocument* doc = uri.getReferencedDocument();
|
||||
if (!doc) {
|
||||
dae->open(uri.str());
|
||||
doc = uri.getReferencedDocument();
|
||||
if (!doc) {
|
||||
printErrorMsg(uri);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
daeElement* elt = dae->getDatabase()->idLookup(uri.id(), doc);
|
||||
if (!elt)
|
||||
printErrorMsg(uri);
|
||||
|
||||
return elt;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue