//---------------------------------------------------------------------------- // EgalTech 2013-2013 //---------------------------------------------------------------------------- // File : GdbExecutor.h Data : 25.11.13 Versione : 1.3a1 // Contenuto : Dichiarazione della classe GdbExecutor. // // // // Modifiche : 27.03.13 DS Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #include "OutTsc.h" #include "/EgtDev/Include/EgkGdbExecutor.h" #include "/EgtDev/Include/EgtPerfCounter.h" #include "/EgtDev/Include/EgtExecMgr.h" #include "/EgtDev/Include/EgkGeoCollection.h" class PolyLine ; class PolyArc ; //---------------------------------------------------------------------------- class GdbExecutor : public IGdbExecutor { public : // ICmdExecutor virtual bool SetCmdParser( ICmdParser* pParser) ; virtual bool AddStandardVariables( void) ; virtual int Execute( const std::string& sCmd1, const std::string& sCmd2, const STRVECTOR& vsParams) ; public : // IGdbExecutor ~GdbExecutor( void) ; virtual bool SetGeomDB( IGeomDB* pGdb) ; public : GdbExecutor( void) ; private : bool AddGeoObj( const std::string& sId, const std::string& sIdParent, IGeoObj* pGeoObj) ; int GetIdParam( const std::string& sParam, bool bNewAllowed = false) ; bool GetNamesParam( const std::string& sParam, INTVECTOR& vnNames) ; bool GetVectorParam( const std::string& sParam, const Frame3d& frVect, Vector3d& vtV) ; bool GetPointParam( const std::string& sParam, const Frame3d& frPnt, Point3d& ptP) ; bool GetPointsParam( const std::string& sParam, const Frame3d& frPnt, PolyLine& PL) ; bool GetPointWParam( const std::string& sParam, const Frame3d& frPnt, Point3d& ptP, double& dW) ; bool GetPointWsParam( const std::string& sParam, const Frame3d& frPnt, PolyArc& PA) ; bool GetLengthParam( const std::string& sParam, double& dLen) ; bool GetDirParam( const std::string& sParam, const Frame3d& frDir, double& dDir) ; bool GetFrameParam( const std::string& sParam, const Frame3d& frRef, Frame3d& frF) ; bool GetColorParam( const std::string& sParam, bool& bByParent, Color& cCol) ; bool GetMaterialParam( const std::string& sParam, bool& bByParent, int& nMat) ; bool GetStringParam( const std::string& sParam, std::string& sString) ; bool ExecuteGroup( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecutePoint( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteVector( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool VectorMake( const STRVECTOR& vsParams) ; bool VectorBaseVector( const STRVECTOR& vsParams) ; bool VectorFromSpherical( const STRVECTOR& vsParams) ; bool VectorDifference( const STRVECTOR& vsParams) ; bool VectorCrossProduct( const STRVECTOR& vsParams) ; bool VectorModifyBase( const STRVECTOR& vsParams) ; bool ExecuteFrame( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteCurveLine( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool CurveLineMake( const STRVECTOR& vsParams) ; bool CurveLineVersorLength( const STRVECTOR& vsParams) ; bool CurveLineDirLength( const STRVECTOR& vsParams) ; bool CurveLinePointTgCurve( const STRVECTOR& vsParams) ; bool CurveLineTgTwoArcs( const STRVECTOR& vsParams) ; bool CurveLineMinPointCurve( const STRVECTOR& vsParams) ; bool ExecuteCurveCircle( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteCurveArc( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool CurveCircleMake( const STRVECTOR& vsParams) ; bool CurveCirclePlaneXY( const STRVECTOR& vsParams) ; bool CurveArcMake( const STRVECTOR& vsParams) ; bool CurveArcPlaneXY( const STRVECTOR& vsParams) ; bool CurveArcCircle3P( const STRVECTOR& vsParams, bool bCirc) ; bool CurveArc2PDi( const STRVECTOR& vsParams) ; bool CurveArc2PRS( const STRVECTOR& vsParams) ; bool CurveArcC2P( const STRVECTOR& vsParams) ; bool CurveCircleCenterTgArc( const STRVECTOR& vsParams) ; bool CurveArcCenterTgArcP( const STRVECTOR& vsParams) ; bool CurveArcPDiTgArc( const STRVECTOR& vsParams) ; bool CurveArcInvertNormal( const STRVECTOR& vsParams) ; bool CurveArcChangeRadius( const STRVECTOR& vsParams) ; bool CurveArcChangeDeltaN( const STRVECTOR& vsParams) ; bool CurveArcToAdditional( const STRVECTOR& vsParams) ; bool CurveArcFlip( const STRVECTOR& vsParams) ; bool ExecuteCurveBez( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteCurveCompo( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool CurveCompoMake( const STRVECTOR& vsParams) ; bool CurveCompoFromPoints( const STRVECTOR& vsParams) ; bool CurveCompoFromPointBulges( const STRVECTOR& vsParams) ; bool CurveCompoFromPointInterpolation( const STRVECTOR& vsParams) ; bool CurveCompoFromCurveApproximation( const STRVECTOR& vsParams) ; bool CurveCompoFromSplit( const STRVECTOR& vsParams) ; bool CurveCompoFromPolygon( const STRVECTOR& vsParams, int nType) ; bool CurveCompoFromBiarc( const STRVECTOR& vsParams) ; bool CurveCompoAddCurve( const STRVECTOR& vsParams, bool bEndOrStart) ; bool CurveCompoExtractCurve( const STRVECTOR& vsParams, bool bEndOrStart) ; bool CurveCompoChangeStart( const STRVECTOR& vsParams) ; bool ExecuteSurfTriMesh( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool SurfTriMeshBegin( const STRVECTOR& vsParams) ; bool SurfTriMeshAddVertex( const STRVECTOR& vsParams) ; bool SurfTriMeshAddTriangle( const STRVECTOR& vsParams) ; bool SurfTriMeshEnd( const STRVECTOR& vsParams) ; bool SurfTriMeshByTriangleSoup( const STRVECTOR& vsParams) ; bool SurfTriMeshByFlatContour( const STRVECTOR& vsParams) ; bool SurfTriMeshByExtrusion( const STRVECTOR& vsParams) ; bool SurfTriMeshByTwoPaths( const STRVECTOR& vsParams) ; bool SurfTriMeshByScrewing( bool bMove, const STRVECTOR& vsParams) ; bool SurfTriMeshChangeSmoothAng( const STRVECTOR& vsParams) ; bool SurfTriMeshDoCompacting( const STRVECTOR& vsParams) ; bool SurfTriMeshDoSewing( const STRVECTOR& vsParams) ; bool ExecuteText( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool TextSimple( const STRVECTOR& vsParams) ; bool TextComplete( const STRVECTOR& vsParams) ; bool TextModifyText( const STRVECTOR& vsParams) ; bool TextChangeFont( const STRVECTOR& vsParams) ; bool TextFlip( const STRVECTOR& vsParams) ; bool TextMir( const STRVECTOR& vsParams) ; bool TextOutline( const STRVECTOR& vsParams) ; bool TextSplitOnLineBreak( const STRVECTOR& vsParams) ; bool ExecuteLevel( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteMode( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteStatus( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteSelect( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteDeselect( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteMaterial( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool MaterialColor( const STRVECTOR& vsParams) ; bool MaterialMaterial( const STRVECTOR& vsParams) ; bool MaterialDefault( const STRVECTOR& vsParams) ; bool ExecuteName( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteInfo( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteMatLibrary( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteCopy( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteRelocate( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteErase( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteTranslate( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteRotate( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteScale( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteMirror( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteShear( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteCurveModify( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool CurveModifyInvert( const STRVECTOR& vsParams) ; bool CurveModifyStartPoint( const STRVECTOR& vsParams) ; bool CurveModifyEndPoint( const STRVECTOR& vsParams) ; bool CurveModifyExtrusion( const STRVECTOR& vsParams) ; bool CurveModifyThickness( const STRVECTOR& vsParams) ; bool CurveModifyTrim( const STRVECTOR& vsParams, int nTrimType) ; bool ExecuteCurveCopy( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool CurveCopyByParamRange( const STRVECTOR& vsParams) ; bool CurveCopyBySplitClass( const STRVECTOR& vsParams) ; bool CurveCopyByChain( const STRVECTOR& vsParams) ; bool ExecuteSurfModify( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool SurfModifyInvert( const STRVECTOR& vsParams) ; bool ExecuteNew( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteLoad( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteSave( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteOutTextIcci( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool ExecuteOutTsc( const std::string& sCmd2, const STRVECTOR& vsParams) ; bool OutGroupTsc( int nId, int nFlag, int nLev = 0) ; private : enum SeLp { SL, EL, SP, EP, SEP} ; private : IGeomDB* m_pGDB ; ICmdParser* m_pParser ; ExecManager m_ExecMgr ; OutTsc m_OutTsc ; std::string m_sId ; std::string m_sParentId ; IGeoObj* m_pGeoObj ; } ;