X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FDXFPlugin_OperationsCreator.hxx;fp=src%2FDXFPlugin_OperationsCreator.hxx;h=9b941ae4d43979013d60d163fa6d9003293c6fdc;hb=df82a39353ce2dd7a05538022e18eaf66af07548;hp=0000000000000000000000000000000000000000;hpb=29579dac5115a99d6395c2ad77d35dca0b4d2fc0;p=plugins%2Fdxfplugin.git diff --git a/src/DXFPlugin_OperationsCreator.hxx b/src/DXFPlugin_OperationsCreator.hxx new file mode 100755 index 0000000..9b941ae --- /dev/null +++ b/src/DXFPlugin_OperationsCreator.hxx @@ -0,0 +1,57 @@ +// Copyright (C) 2014-2015 OPEN CASCADE +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// + +#ifndef _GEOM_DXFPlugin_OperationsCreator_HXX_ +#define _GEOM_DXFPlugin_OperationsCreator_HXX_ + +// internal includes +#include "DXFPlugin_Engine.hxx" + +// GEOM includes +#include "GEOM_Gen_i.hh" + +// C++ includes +#include + +class DXFPlugin_IOperations; + +//===================================================================== +// Operations creator +//===================================================================== +class DXFPLUGINENGINE_EXPORT DXFPlugin_OperationsCreator : public GEOM_GenericOperationsCreator +{ +public: + DXFPlugin_OperationsCreator(); + ~DXFPlugin_OperationsCreator(); + + GEOM_IOperations_i* Create( PortableServer::POA_ptr thePOA, + int theStudyId, + GEOM::GEOM_Gen_ptr theEngine, + ::GEOMImpl_Gen* theGenImpl ); + +private: + static DXFPlugin_IOperations* get( ::GEOMImpl_Gen* theGenImpl, + int theStudyId ); + + static std::map _mapOfOperations; + + friend class DXFPlugin_IECallBack; +}; + +#endif