Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   Related Pages  

AutoGizmoC.h

00001 //-------------------------------------------------------------------------
00002 //
00003 // File:        AutoGizmoC.h
00004 // Desc:        Auto Gizmo class.
00005 // Author:      memon <memon@inside.org>
00006 //
00007 //-------------------------------------------------------------------------
00008 //  Copyright (c) 2000-2002 Moppi Productions. All Rights Reserved.
00009 //  This file is part of Moppi Demopaja SDK. For conditions of 
00010 //  distribution and use, see the accompanying license.txt file.
00011 //  http://moppi.inside.org/demopaja/
00012 //-------------------------------------------------------------------------
00013 
00014 #ifndef __DEMOPAJA_AUTOGIZMOC_H__
00015 #define __DEMOPAJA_AUTOGIZMOC_H__
00016 
00017 namespace Composition {
00018     class AutoGizmoC;
00019 };
00020 
00021 #include "PajaTypes.h"
00022 #include "DataBlockI.h"
00023 #include "EditableI.h"
00024 #include "ParamI.h"
00025 #include "UndoC.h"
00026 #include "FileIO.h"
00027 #include "EffectI.h"
00028 #include "GizmoI.h"
00029 #include <string>
00030 #include <vector>
00031 
00032 namespace Composition {
00033 
00035 
00066     class AutoGizmoC : public GizmoI
00067     {
00068     public:
00069 
00071 
00074         static AutoGizmoC*          create_new( EffectI* pParent, const char* szName, PajaTypes::uint32 ui32Id );
00075 
00077         virtual Edit::DataBlockI*   create();
00078 
00080         virtual Edit::DataBlockI*   create( Edit::EditableI* pOriginal );
00081 
00083         virtual void                copy( Edit::EditableI* pEditable );
00085         virtual void                restore( Edit::EditableI* pEditable );
00086 
00088         virtual PajaTypes::int32    get_parameter_count();
00089 
00091         virtual void                add_parameter( ParamI* pParam );
00092 
00094         virtual void                del_parameter( PajaTypes::int32 i32Index );
00095 
00097         virtual ParamI*             get_parameter( PajaTypes::int32 i32Index );
00098 
00100 
00101         virtual ParamI*             get_parameter_by_id( PajaTypes::int32 i32Id );
00102 
00104         virtual PajaTypes::uint32   save( FileIO::SaveC* pSave );
00105 
00107         virtual PajaTypes::uint32   load( FileIO::LoadC* pLoad );
00108 
00109     protected:
00111         AutoGizmoC();
00113 
00117         AutoGizmoC( EffectI* pParent, const char* szName, PajaTypes::uint32 ui32Id );
00119         AutoGizmoC( Edit::EditableI* pOriginal );
00121         virtual ~AutoGizmoC();
00122 
00123     private:
00124         std::vector<ParamI*>    m_rParams;
00125     };
00126 
00127 }; // namespace
00128 
00129 #endif // __DEMOPAJA_AUTOGIZMOC_H__

Moppi Demopaja SDK Documentation -- Copyright © 2000-2002 Moppi Productions