Files
Include/EExBeamMgr.h
T
Dario Sassi 3d06ce7c60 Include :
- modifiche nelle dichiarazioni dei puntatori a funzione
- aggiornamento prototipi.
2025-10-13 08:45:31 +02:00

71 lines
3.4 KiB
C++

//----------------------------------------------------------------------------
// EgalTech 2020-2022
//----------------------------------------------------------------------------
// File : EExBeamMgr.h Data : 06.07.22 Versione : 2.4g2
// Contenuto : Dichiarazione della interfaccia IBeamMgr.
//
//
//
// Modifiche : 30.08.20 DS Creazione modulo.
// 01.06.21 DS Aggiunti parametri vsUAtt per Process.
// 06.07.22 DS Aggiunta GetSideData.
//
//----------------------------------------------------------------------------
#pragma once
#include "/EgtDev/Include/EGkGeomDB.h"
#include "/EgtDev/Include/EExBeamConst.h"
#include "/EgtDev/Include/EgtFunPtrType.h"
#include <string>
//----------------------- Macro per import/export ----------------------------
#undef EEK_EXPORT
#if defined( I_AM_EEX) // da definirsi solo nella DLL
#define EEX_EXPORT __declspec( dllexport)
#else
#define EEX_EXPORT __declspec( dllimport)
#endif
//-----------------------------------------------------------------------------
class __declspec( novtable) IBeamMgr
{
public :
virtual ~IBeamMgr( void) {}
virtual bool Init( IGeomDB* pGDB, int nFlag = 0) = 0 ;
virtual bool SetFlag( int nFlag) = 0 ;
virtual int CreatePart( void) = 0 ;
virtual bool SetPart( int nPartId) = 0 ;
virtual bool ErasePart( void) = 0 ;
virtual bool UpdatePart( void) = 0 ;
virtual bool SetPartProdNbr( int nProdNbr) = 0 ;
virtual bool SetPartName( const std::string& sName) = 0 ;
virtual bool SetPartCount( int nCount) = 0 ;
virtual bool SetPartBox( double dLength, double dHeight, double dWidth, bool bUpdate = true) = 0 ;
virtual bool GetSideData( int nSide, Frame3d& frRef, double& dLength, double& dWidth, double& dHeight) = 0 ;
virtual bool ShowFacesName( bool bShow) = 0 ;
virtual bool ShowLoadingSide( bool bShow, bool bFromLeft) = 0 ;
virtual int AddProcess( int nGroup, int nProc, int nSide, const std::string& sDes, int nProcId,
const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt,
int nCrvId, int nCrv2Id, bool bUpdate = true) = 0 ;
virtual int ModifyProcess( int nGeomId, int nGroup, int nProc, int nSide, const std::string& sDes, int nProcId,
const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt,
int nCrvId, int nCrv2Id, bool bUpdate = true) = 0 ;
virtual bool EraseProcess( int nGeomId, bool bUpdate = true) = 0 ;
virtual bool EnableProcess( int nGeomId, bool bEnable, bool bUpdate = true) = 0 ;
virtual bool CalcAllSolids( bool bShow, bool bRecalc, pcfProcEvents pFun = nullptr) = 0 ;
virtual bool ShowAllSolids( bool bShow, pcfProcEvents pFun = nullptr) = 0 ;
virtual bool CalcSolid( int nPartId, bool bRecalc = false) = 0 ;
virtual int GetSolid( int nPartId) const = 0 ;
virtual bool ShowSolid( int nPartId, bool bShow) = 0 ;
virtual bool GetBuildingIsOn( int nAssGrpId) const = 0 ;
virtual bool ShowBuilding( int nAssGrpId, bool bShow) = 0 ;
} ;
//-----------------------------------------------------------------------------
extern "C" {
EEX_EXPORT IBeamMgr* CreateBeamMgr( void) ;
}