ICustAttribCollapseManager.h

Go to the documentation of this file.
00001 /**********************************************************************
00002 
00003 FILE:           ICustAttribCollapseManager.h
00004 
00005 DESCRIPTION:    Public interface controlling whether Custom Attributes should survive a stack collapse
00006 
00007 CREATED BY:     Neil Hazzard, Discreet
00008 
00009 HISTORY:        Created 8th April 2004
00010 
00011 *>  Copyright (c) 2004, All Rights Reserved.
00012 **********************************************************************/
00013 #pragma once
00014 
00015 #include "iFnPub.h"
00016 #include "GetCOREInterface.h"
00017 
00018 #define CUSTATTRIB_COLLAPSE_MANAGER Interface_ID(0x7abc18a6, 0x2a7e522b)
00019 
00021 
00030 class ICustAttribCollapseManager : public FPStaticInterface
00031 {
00032 public:
00033 
00035     /* \return True if the Custom Attributes should be maintained during a stack collapse */
00036     virtual bool GetCustAttribSurviveCollapseState() = 0;
00037 
00039     /*  \param state True if the Custom Attributes should be maintained during a stack collapse */
00040     virtual void SetCustAttribSurviveCollapseState(bool state) = 0;
00041 
00043     /*  \return True if the Custom Attributes on subAnims of modifiers should be maintained during a stack collapse */
00044     virtual bool GetRetainSubAnimCustAttribs() = 0;
00045 
00047     /*  \param state True if the Custom Attributes on subAnims of modifiers should be maintained during a stack collapse */
00048     virtual void SetRetainSubAnimCustAttribs(bool state) = 0;
00049 
00051     static ICustAttribCollapseManager* GetICustAttribCollapseManager() { 
00052         return static_cast<ICustAttribCollapseManager*>(GetCOREInterface(CUSTATTRIB_COLLAPSE_MANAGER));
00053     }
00054 
00055 };
00056 
00057