//---------------------------------------------------------------------------- // EgalTech 2015-2015 //---------------------------------------------------------------------------- // File : Head.h Data : 25.05.15 Versione : 1.6e7 // Contenuto : Dichiarazione della classe Head. // // // // Modifiche : 25.05.15 DS Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #include "Machine.h" #include "/EgtDev/Include/EGkUserObj.h" #include "/EgtDev/Include/EGkPoint3d.h" //---------------------------------------------------------------------------- class Head : public IUserObj { public : // IUserObj Head* Clone( void) const override ; const std::string& GetClassName( void) const override ; bool Dump( std::string& sOut, bool bMM = true, const char* szNewLine = "\n") const override ; bool SetOwner( int nId, IGeomDB* pGDB) override ; int GetOwner( void) const override ; IGeomDB* GetGeomDB( void) const override ; public : Head( void) ; bool Set( const std::string& sName, int nType, int nExitCount, const std::string& sHSet, const Vector3d& vtADir, double dRot1W, const STROKE& Rot2Stroke, int nSolCh, const STRVECTOR& vsOthColl) ; bool AddHeadToHSet( const std::string& sHead) ; const std::string& GetName( void) const { return m_sName ; } int GetType( void) const { return m_nType ; } int GetExitCount( void) const { return m_nExitCount ; } const STRVECTOR& GetHSet(void) const { return m_vsHSet ; } const Vector3d& GetADir( void) const { return m_vtADir ; } double GetRot1W( void) const { return m_dRot1W ; } const STROKE& GetRot2Stroke( void) const { return m_Rot2Stroke ; } int GetSolCh( void) const { return m_nSolCh ; } const STRVECTOR& GetOtherCollGroups( void) const { return m_vsOtherColl ; } private : int m_nOwnerId ; IGeomDB* m_pGeomDB ; std::string m_sName ; int m_nType ; int m_nExitCount ; STRVECTOR m_vsHSet ; Vector3d m_vtADir ; double m_dRot1W ; STROKE m_Rot2Stroke ; int m_nSolCh ; STRVECTOR m_vsOtherColl ; } ;