Sirikata
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes
Sirikata::Models::ColladaSystem Class Reference

#include <ColladaSystem.hpp>

Inheritance diagram for Sirikata::Models::ColladaSystem:
Collaboration diagram for Sirikata::Models::ColladaSystem:

List of all members.

Public Member Functions

virtual ~ColladaSystem ()
virtual bool canLoad (Transfer::DenseDataPtr data)
 Check if this ModelsSystem will be able to parse the data.
virtual Mesh::VisualPtr load (const Transfer::RemoteFileMetadata &metadata, const Transfer::Fingerprint &fp, Transfer::DenseDataPtr data)
 Load a mesh into a Visual object.
virtual Mesh::VisualPtr load (Transfer::DenseDataPtr data)
virtual bool convertVisual (const Mesh::VisualPtr &visual, const String &format, std::ostream &vout)
 Convert a Visual to the format for this ModelsSystem.
virtual bool convertVisual (const Mesh::VisualPtr &visual, const String &format, const String &filename)
 Convert a Visual to the format for this ModelsSystem.

Static Public Member Functions

static ColladaSystemcreate (String const &options)

Private Types

typedef std::set
< ColladaDocumentPtr
DocumentSet

Private Member Functions

 ColladaSystem ()
 ColladaSystem (ColladaSystem const &)
ColladaSystemoperator= (ColladaSystem const &)
bool initialize (String const &options)
void addHeaderData (const Transfer::RemoteFileMetadata &metadata, Mesh::MeshdataPtr mesh)

Private Attributes

DocumentSet mDocuments

Member Typedef Documentation


Constructor & Destructor Documentation

Sirikata::Models::ColladaSystem::~ColladaSystem ( ) [virtual]
Sirikata::Models::ColladaSystem::ColladaSystem ( ) [private]
Sirikata::Models::ColladaSystem::ColladaSystem ( ColladaSystem const &  ) [private]

Member Function Documentation

void Sirikata::Models::ColladaSystem::addHeaderData ( const Transfer::RemoteFileMetadata metadata,
Mesh::MeshdataPtr  mesh 
) [private]
bool Sirikata::Models::ColladaSystem::canLoad ( Transfer::DenseDataPtr  data) [virtual]

Check if this ModelsSystem will be able to parse the data.

This doesn't guarantee successful parsing: generally it only checks for magic numbers to see if it is likely a supported format.

Implements Sirikata::ModelsSystem.

Referenced by load().

bool Sirikata::Models::ColladaSystem::convertVisual ( const Mesh::VisualPtr visual,
const String &  format,
std::ostream &  vout 
) [virtual]

Convert a Visual to the format for this ModelsSystem.

Parameters:
visualthe Visual to save to disk
formatformat hint (may or may not be used by plugin)
voutan output stream to write the visual's data to
Returns:
true if the conversion was successful, false otherwise

Implements Sirikata::ModelsSystem.

References Sirikata::Path::DIR_TEMP, Sirikata::Logging::error, Sirikata::Path::Get(), and Sirikata::Path::GetTempFilename().

bool Sirikata::Models::ColladaSystem::convertVisual ( const Mesh::VisualPtr visual,
const String &  format,
const String &  filename 
) [virtual]

Convert a Visual to the format for this ModelsSystem.

Parameters:
visualthe Visual to save to disk
formatformat hint (may or may not be used by plugin)
filenamethe file to save the serialized mesh to
Returns:
true if the conversion was successful, false otherwise
Deprecated:
You should use the version of this method that takes a std::ostream instead.

Implements Sirikata::ModelsSystem.

References Sirikata::meshdataToCollada().

ColladaSystem * Sirikata::Models::ColladaSystem::create ( String const &  options) [static]

References initialize(), and Sirikata::Logging::insane.

Referenced by init().

bool Sirikata::Models::ColladaSystem::initialize ( String const &  options) [private]
Mesh::VisualPtr Sirikata::Models::ColladaSystem::load ( Transfer::DenseDataPtr  data) [virtual]
Mesh::VisualPtr Sirikata::Models::ColladaSystem::load ( const Transfer::RemoteFileMetadata metadata,
const Transfer::Fingerprint fp,
Transfer::DenseDataPtr  data 
) [virtual]

Load a mesh into a Visual object.

Implements Sirikata::ModelsSystem.

References addHeaderData(), canLoad(), and Sirikata::Transfer::RemoteFileMetadata::getURI().

ColladaSystem& Sirikata::Models::ColladaSystem::operator= ( ColladaSystem const &  ) [private]

Member Data Documentation


The documentation for this class was generated from the following files: