#include "sceneAssemblyStrings.h"
#include "adskRepresentations.h"
#include "assemblyDefinition.h"
#include <maya/MGlobal.h>
#include <maya/MDagModifier.h>
#include <maya/MFnContainerNode.h>
#include <maya/MFnAssembly.h>
#include <maya/MExternalContentInfoTable.h>
#include <maya/MExternalContentLocationTable.h>
#include <cassert>
namespace {
const char CACHE_TYPE[] = "Cache";
const char SCENE_TYPE[] = "Scene";
const char LOCATOR_TYPE[] = "Locator";
{
}
if (status != MS::kSuccess) {
}
return components[components.
length()-1];
}
{
return pathSep(path, '/');
}
}
) const
{
return new CacheRepresentation(assembly, name);
}
MString CacheRepresentation::Factory::creationName(
) const
{
return pathTail(input);
}
MString CacheRepresentation::Factory::creationLabel(
) const
{
return creationName(assembly, input);
}
MString CacheRepresentation::Factory::creationData(
) const
{
return input;
}
) const
{
return new SceneRepresentation(assembly, name);
}
MString SceneRepresentation::Factory::creationName(
) const
{
return pathTail(input);
}
MString SceneRepresentation::Factory::creationLabel(
) const
{
return creationName(assembly, input);
}
MString SceneRepresentation::Factory::creationData(
) const
{
return input;
}
) const
{
return new LocatorRepresentation(assembly, name, data);
}
MString LocatorRepresentation::Factory::creationName(
) const
{
}
MString LocatorRepresentation::Factory::creationLabel(
) const
{
return creationName(assembly, input);
}
MString LocatorRepresentation::Factory::creationData(
) const
{
return input;
}
CacheRepresentation::CacheRepresentation(
) : BaseClass(assembly, name)
{
assert( dynamic_cast< AssemblyDefinition* >( getAssembly() ) != 0 );
}
CacheRepresentation::~CacheRepresentation()
{}
bool CacheRepresentation::activate()
{
AssemblyDefinition* const assembly =
dynamic_cast< AssemblyDefinition* >( getAssembly() );
if ( assembly == 0 ) {
return false;
}
MString(
"gpuCache"), assembly->thisMObject(), &status);
int isLoaded = false;
if(!isLoaded){
}
return false;
}
return false;
}
MPlug fileName = cache.findPlug(
MString(
"cacheFileName"),
true, &status);
return false;
}
fileName.
setValue(assembly->getRepData(getName()));
}
MString CacheRepresentation::type()
{
return CACHE_TYPE;
}
MString CacheRepresentation::getType()
const
{
return type();
}
void CacheRepresentation::getExternalContent(
) const
{
const AssemblyDefinition* const assembly =
dynamic_cast< AssemblyDefinition* >( getAssembly() );
if ( assembly == 0 ) {
return;
}
}
void CacheRepresentation::setExternalContent(
)
{
AssemblyDefinition* const assembly =
dynamic_cast< AssemblyDefinition* >( getAssembly() );
if ( assembly == 0 ) {
return;
}
assembly->setRepData( getName(), path );
}
SceneRepresentation::SceneRepresentation(
) : BaseClass(assembly, name)
{
assert( dynamic_cast< AssemblyDefinition* >( getAssembly() ) != 0 );
}
SceneRepresentation::~SceneRepresentation()
{}
bool SceneRepresentation::activate()
{
AssemblyDefinition* const assembly =
dynamic_cast< AssemblyDefinition* >( getAssembly() );
if ( assembly == 0 ) {
return false;
}
assembly->getRepData(getName()) ,
NULL , true , NULL ,
fileIgnoreVersion);
}
MString SceneRepresentation::type()
{
return SCENE_TYPE;
}
MString SceneRepresentation::getType()
const
{
return type();
}
bool SceneRepresentation::canApplyEdits() const
{
return true;
}
void SceneRepresentation::getExternalContent(
) const
{
const AssemblyDefinition* const assembly =
dynamic_cast< AssemblyDefinition* >( getAssembly() );
if ( assembly == 0 ) {
return;
}
}
void SceneRepresentation::setExternalContent(
)
{
AssemblyDefinition* const assembly =
dynamic_cast< AssemblyDefinition* >( getAssembly() );
if ( assembly == 0 ) {
return;
}
assembly->setRepData( getName(), path );
}
LocatorRepresentation::LocatorRepresentation(
) : BaseClass(assembly, name), fAnnotation(data)
{}
LocatorRepresentation::~LocatorRepresentation()
{}
bool LocatorRepresentation::activate()
{
return false;
}
return false;
}
if (fAnnotation.numChars() > 0) {
return false;
}
MString annotationName =
"annotation";
MString transformName = annotationName +
"#";
return false;
}
MString(
"annotationShape"), transformObj, &status);
return false;
}
return false;
}
MPlug text = annotation.findPlug(
MString(
"text"),
true, &status);
return false;
}
annotation.findPlug(
MString(
"displayArrow"),
true, &status);
return false;
}
}
}
MString LocatorRepresentation::type()
{
return LOCATOR_TYPE;
}
MString LocatorRepresentation::getType()
const
{
return type();
}