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__