# XSIShapeReference.h

    00001 //***************************************************************************************
    00002 //
    00003 // File supervisor: Crosswalk team
    00004 //
    00005 // Copyright 2008 Autodesk, Inc.  All rights reserved.
    00006 // Use of this software is subject to the terms of the Autodesk license agreement
    00007 // provided at the time of installation or download, or which otherwise accompanies
    00008 // this software in either electronic or hard copy form.
    00009 //
    00010 //***************************************************************************************
    00011
    00012 #ifndef _XSISHAPEREFERENCE_H
    00013 #define _XSISHAPEREFERENCE_H
    00014
    00015 #include "Template.h"
    00016
    00017 // Forward declaration
    00018 class CSLXSIShape;
    00019
    00032 class XSIEXPORT CSLXSIShapeReference
    00033     : public CSLTemplate
    00034 {
    00035 public:
    00036
    00042     CSLXSIShapeReference(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
    00043
    00046     virtual ~CSLXSIShapeReference();
    00047
    00048     SI_Error Synchronize();
    00049
    00053     CSLTemplate::ETemplateType Type(){ return CSLTemplate::XSI_SHAPEREFERENCE; }
    00054
    00059     CSLXSIShape* GetReference();
    00060
    00064     SI_Void             SetReference(CSLXSIShape* in_ReferenceShape);
    00065
    00069     SI_Char*            GetReferenceXSIPath();
    00070
    00074     SI_Void             SetReferenceXSIPath( SI_Char* in_szPath );
    00075
    00079     CSLStringProxy*     GetReferencePathProxy(){return &m_ReferencePath;};
    00080
    00081 private:
    00082     CSLStringProxy m_ReferencePath;
    00083     CSLXSIShape* m_pReference;
    00084     SI_Void *m_pReserved;
    00085 };
    00086
    00087 #endif // XSISHAPEREFERENCE