Files
Include/EGkGeoObjSave.h
T
Dario Sassi 692423ced8 Include :
- aggiunta funzione SaveGeoObj (da utilizzare per debug in C++)
- aggiornameno prototipi.
2017-10-30 19:25:45 +00:00

37 lines
1.2 KiB
C++

//----------------------------------------------------------------------------
// EgalTech 2017-2017
//----------------------------------------------------------------------------
// File : EGkGeoObjSave.h Data : 30.10.17 Versione : 1.8j5
// Contenuto : Funzione per salvare su file un Oggetto Geometrico.
//
//
//
// Modifiche : 30.10.17 DS Creazione modulo.
//
//----------------------------------------------------------------------------
#pragma once
#include "/EgtDev/Include/EGkGeomDB.h"
#include "/EgtDev/Include/EgtPointerOwner.h"
//----------------------------------------------------------------------------
bool
SaveGeoObj( IGeoObj* pGObj, const std::string& sFile, int nFlag = GDB_SV_BIN)
{
// creo GeomDB temporaneo
PtrOwner<IGeomDB> pGeomDB( CreateGeomDB()) ;
if ( IsNull( pGeomDB))
return false ;
// inserisco l'oggetto nel GeomDB
int nId = pGeomDB->AddGeoObj( GDB_ID_NULL, GDB_ID_ROOT, pGObj) ;
if ( nId == GDB_ID_NULL)
return false ;
// eseguo il salvataggio
bool bOk = pGeomDB->Save( nId, sFile, nFlag) ;
// rimuovo l'oggetto dal GeomDB
bOk = ( pGeomDB->RemoveGeoObjAndErase( nId) != nullptr) && bOk ;
return bOk ;
}