//Copyright 2020 Siemens Digital Industries Software
//==================================================
//Copyright $2020.
//Siemens Product Lifecycle Management Software Inc.
//All Rights Reserved.
//==================================================
//Copyright 2020 Siemens Digital Industries Software

/*==================================================================================================
File description:
    This file contains the declaration for the Business Object, Dia0SheetDelegate
    Filename:   Dia0SheetDelegate.hxx
    Module:     Dia0diagramming
    @BMIDE autogenerated
==================================================================================================*/

#ifndef DIA0DIAGRAMMING__DIA0SHEETDELEGATE_HXX
#define DIA0DIAGRAMMING__DIA0SHEETDELEGATE_HXX

#include <common/tc_deprecation_macros.h>
#include <Dia0diagramming/Dia0Sheet.hxx>

#include <Dia0diagramming/libdia0diagramming_exports.h>

namespace dia0diagramming
{
    class Dia0SheetDelegate;
}
namespace dia0diagramming
{
    class Dia0SheetImpl;
}
namespace dia0diagramming
{
    class Dia0Sheet;
}
namespace dia0diagramming
{
    class Dia0SheetGenImpl;
}

namespace dia0diagramming_alias = ::dia0diagramming;


class  DIA0DIAGRAMMING_API dia0diagramming_alias::Dia0SheetDelegate
{
public:
    //  Method to initialize this Class
    static int initializeClass();

    //  Method to get the Dia0SheetDelegate instance
    static Dia0SheetDelegate&  getInstance();

    //  Method to create the Dia0SheetImpl pointer
    static Dia0SheetImpl*  createImpl( Dia0Sheet&  ifObj );

    //  Method to delete the Dia0SheetImpl pointer
    static void deleteImpl( Dia0SheetImpl*  impl );



protected:
    //  Pointer to the instance
    static Dia0SheetDelegate*  m_pInstance;

    Dia0SheetDelegate();
    virtual ~Dia0SheetDelegate();
    static void setInstance( Dia0SheetDelegate*  instance );


private:
    friend class  ::dia0diagramming::Dia0SheetGenImpl;

};

#include <Dia0diagramming/libdia0diagramming_undef.h>
#endif  //  DIA0DIAGRAMMING__DIA0SHEETDELEGATE_HXX
