CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
DbHostAppServices.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24
25
26
27#ifndef _ODDBHOSTAPPLICATIONSERVICES_INCLUDED_
28#define _ODDBHOSTAPPLICATIONSERVICES_INCLUDED_
29
30
31#include "TD_PackPush.h"
32
33#include "SmartPtr.h"
35#include "DbLayoutManager.h"
36#include "OdStreamBuf.h"
37#include "DbDatabase.h"
38#include "OdFont.h"
39#include "OdBinaryData.h"
40#include "DbSecurity.h"
43
44class OdDbKey;
45class OdDbAbstractClipBoundaryDefinition;
46class ClipBoundaryArray;
50
55
56#pragma warning (push)
57#pragma warning (disable : 4251)
67{
68public:
70
73
122 const OdString& filename,
123 OdDbBaseDatabase* pDb = 0,
124 FindFileHint hint = kDefault);
125
130
140 OdDbHostAppProgressMeter* pProgressMeter);
141
148 virtual OdRxClass* databaseClass() const;
149
173 bool createDefault = true,
174 OdDb::MeasurementValue measurement = OdDb::kEnglish) const;
175
189 OdStreamBuf* pStreamBuf,
190 bool allowCPConversion = false,
191 bool partialLoad = false,
192 const OdPassword& password = OdPassword());
193
209 OdStreamBuf* pStreamBuf,
210 OdDbAuditInfo *pAuditInfo = 0,
211 const OdPassword& password = OdPassword());
212
232 const OdString& filename,
233 bool allowCPConversion = false,
234 bool partialLoad = false,
236 const OdPassword& password = OdPassword())
237 {
238 Oda::FileAccessMode nDesiredAccess = Oda::kFileRead;
239 return readFile(odSystemServices()->createFile(filename, nDesiredAccess, shareMode),
240 allowCPConversion, partialLoad, password);
241 }
242
243
250 virtual const OdString program();
251
258 virtual const OdString product();
259
266 virtual const OdString companyName();
267
285
293
300 virtual int releaseMajorVersion();
301
308 virtual int releaseMinorVersion();
309
316 virtual const OdString versionString();
317
330 //virtual void warning(
331 // const OdString& message) { odSystemServices()->warning(NULL, message); };
332 //virtual void warning(
333 // const char* warnVisGroup,
334 // const OdString& message) { odSystemServices()->warning(warnVisGroup, message); };
335 //virtual void warning(
336 // OdWarning warningOb) { warning(NULL, getErrorDescription(warningOb)); }
337 //virtual void warning(
338 // const char* warnVisGroup,
339 // OdWarning warningOb) { warning(warnVisGroup, getErrorDescription(warningOb)); }
340
341 virtual void warning(
342 OdWarning warningOb,
343 OdDbObjectId objectId) { warning(NULL, warningOb, objectId); }
344 virtual void warning(
345 const char* warnVisGroup,
346 OdWarning warningOb,
347 OdDbObjectId objectId);
348 virtual void warning(
349 const OdError& err) { warning(NULL, err.description()); }
350 virtual void warning(
351 const char* warnVisGroup,
352 const OdError& err) { warning(warnVisGroup, err.description()); }
353
362 unsigned int errorCode);
363
369 unsigned int errorCode,...);
370#ifdef ODA_FORMAT
371 virtual OdString formatMessage(unsigned int errorCode, long i, const OdString& str) { return formatMessage(errorCode, i, (void*)str.c_str()); }
372#endif
373
374
382 virtual bool doFullCRCCheck();
383
393
404 virtual void auditPrintReport(
405 OdAuditInfo* pAuditInfo,
406 const OdString& strLine,
407 int printDest) const;
408
417
430/* Moved to OdDbBaseHostAppServices
431 virtual bool ttfFileNameByDescriptor(
432 const OdTtfDescriptor& description,
433 OdString& filename) = 0;
434*/
435#define REGVAR_DEF(type, name, unused3, unused4, unused5)\
436protected:\
437 \
438 type m_##name;\
439public:\
440 \
441 SVARS_FUNC_MODIFIER type get##name() const;\
442 \
443 \
444 SVARS_FUNC_MODIFIER void set##name(type val);
445
446#include "SysVarDefs.h"
447
448#undef REGVAR_DEF
449
450
451 virtual OdString getAlternateFontName() const;
452
463 virtual OdString getFontMapFileName() const;
464
493 const OdString& fontName,
494 OdFontType fontType);
495
525 const OdString& fontName,
526 OdFontType fontType);
527
542 const OdFont& pFont,
543 OdChar unicodeChar, OdDbBaseDatabase *pDb);
544
553 virtual bool getSystemFontFolders(
554 OdStringArray& aDirs);
555
566 virtual void collectFilePathsInDirectory(OdStringArray& res, // out
567 const OdString& sPath, // in
568 const OdString& sFilter = L"*.*");
569
578
595 virtual bool getPassword(
596 const OdString& dwgName,
597 bool isXref,
598 OdPassword& password);
599
600 /* { Secret } */
602
616
645 virtual OdString fileDialog(
646 int flags,
647 const OdString& dialogCaption = OdString::kEmpty,
648 const OdString& defExt = OdString::kEmpty,
649 const OdString& defFilename = OdString::kEmpty,
650 const OdString& filter = OdString::kEmpty);
651
652 virtual OdDbLayoutManagerPtr layoutManager() const;
653
657 virtual OdUInt32 educationalPlotStamp() const;
658
663
667 virtual void getThumbSize(unsigned int& nWidth, unsigned int& nHeight);
668
677 OdRxObject* pViewObj = NULL,
678 OdDbBaseDatabase* pDb = NULL,
679 OdUInt32 flags = 0);
680
682
684 {
685 OdRxClassPtr pService(odrxServiceDictionary()->getAt(OD_T("OdModelerGeometryCreator")));
686 if (!pService.isNull())
687 {
688 OdModelerGeometryCreatorPtr pCreator = (OdModelerGeometryCreator*)pService->create().get();
689 if (!pCreator.isNull())
690 {
691 return pCreator->initBrepBuilder(brepBuilder, bbType);
692 }
693 }
694 return eNoInterface;
695 }
696
697 virtual OdString fixName(const OdDbSymbolTableRecord* pRecord);
698
699#ifdef SWIG
700 friend class OdDbHostAppServices2;
701private:
702#endif
703 virtual OdDbKey* key() const = 0;
704protected:
705 OdMutex m_LayoutManagerMutex;
706 OdMutex m_ValidatorMutex;
707 OdMutex m_PwdCacheMutex;
708// OdMutex m_WarningMutex;
709 OdDbLayoutManagerPtr m_pLayoutManager;
710 OdDbPlotSettingsValidatorPtr m_pValidator;
711 OdPwdCachePtr m_pPwdCache;
712};
713#pragma warning (pop)
714
722{
723 virtual OdDbKey* key() const;
724protected:
726};
727
728#include "TD_PackPop.h"
729
730#endif /* _ODDBHOSTAPPLICATIONSERVICES_INCLUDED_ */
731
732
733
OdRxObject OdDbBaseDatabase
BrepType
Definition BrepBuilder.h:43
OdSmartPtr< OdGsDevice > OdGsDevicePtr
OdSmartPtr< OdDbUndoController > OdDbUndoControllerPtr
OdSmartPtr< OdDbDatabase > OdDbDatabasePtr
Definition DbDatabase.h:203
#define TOOLKIT_EXPORT
Definition DbExport.h:40
OdSmartPtr< OdDbPageController > OdDbPageControllerPtr
OdSmartPtr< OdDbLayoutManager > OdDbLayoutManagerPtr
OdSmartPtr< OdStreamBuf > OdStreamBufPtr
OdSmartPtr< OdDbPlotSettingsValidator > OdDbPlotSettingsValidatorPtr
OdSmartPtr< OdPwdCache > OdPwdCachePtr
Definition DbSecurity.h:235
OdString OdPassword
Definition DbSecurity.h:52
TOOLKIT_EXPORT OdDbSystemServices * odSystemServices()
OdSmartPtr< OdModelerGeometryCreator > OdModelerGeometryCreatorPtr
enum OdTagFontType OdFontType
#define OD_T(x)
unsigned int OdUInt32
#define ODRX_ABSTRACT
wchar_t OdChar
OdResult OdWarning
Definition OdResult.h:44
OdResult
Definition OdResult.h:29
OdString OdString
Definition OdString.h:1258
FIRSTDLL_EXPORT OdRxDictionaryPtr odrxServiceDictionary()
OdSmartPtr< OdRxClass > OdRxClassPtr
Definition RxObject.h:1107
OdArray< OdString > OdStringArray
Definition StringArray.h:32
bool isNull() const
virtual OdString getPreferableFont(const OdString &fontName, OdFontType fontType)=0
virtual OdGsDevicePtr gsBitmapDevice(OdRxObject *pViewObj=NULL, OdDbBaseDatabase *pDb=NULL, OdUInt32 flags=0)
virtual void warning(const OdString &message)
virtual bool getSystemFontFolders(OdStringArray &aDirs)
virtual OdString getSubstituteFont(const OdString &fontName, OdFontType fontType)=0
virtual OdString getSubstituteFontByChar(const OdFont &, OdChar, OdDbBaseDatabase *)
virtual void collectFilePathsInDirectory(OdStringArray &res, const OdString &sPath, const OdString &sFilter=L"*.*")
virtual OdResult brepBuilder(OdBrepBuilder &bbuilder, BrepType bbType)
virtual OdString getAlternateFontName() const =0
virtual OdString fileDialog(int flags, const OdString &dialogCaption=OdString::kEmpty, const OdString &defExt=OdString::kEmpty, const OdString &defFilename=OdString::kEmpty, const OdString &filter=OdString::kEmpty)
virtual OdString formatMessage(unsigned int errorCode,...)
virtual OdString getFontMapFileName() const =0
virtual OdStreamBufPtr getHistoryFile(OdDbDatabase *)
virtual void auditPrintReport(OdAuditInfo *pAuditInfo, const OdString &strLine, int printDest) const
virtual OdUInt32 educationalPlotStamp() const
virtual OdDbHostAppProgressMeter * newProgressMeter()
virtual const OdString product()
virtual int releaseMajorVersion()
virtual OdRxClass * databaseClass() const
virtual OdDbPlotSettingsValidator * plotSettingsValidator()
virtual OdDbDatabasePtr readFile(const OdString &filename, bool allowCPConversion=false, bool partialLoad=false, Oda::FileShareMode shareMode=Oda::kShareDenyNo, const OdPassword &password=OdPassword())
virtual int releaseMinorVersion()
virtual OdDbPageControllerPtr newPageController()
virtual OdDbUndoControllerPtr newUndoController()
virtual const OdString versionString()
virtual void warning(const char *warnVisGroup, OdWarning warningOb, OdDbObjectId objectId)
virtual OdPwdCachePtr getPasswordCache()
virtual OdString findFile(const OdString &filename, OdDbBaseDatabase *pDb=0, FindFileHint hint=kDefault)
virtual OdHatchPatternManager * patternManager()=0
virtual void getThumbSize(unsigned int &nWidth, unsigned int &nHeight)
virtual OdString getErrorDescription(unsigned int errorCode)
virtual const OdString releaseMajorMinorString()
virtual OdString formatMessage(unsigned int errorCode,...)
ODRX_DECLARE_MEMBERS(OdDbHostAppServices)
virtual bool getPassword(const OdString &dwgName, bool isXref, OdPassword &password)
virtual void warning(OdWarning warningOb, OdDbObjectId objectId)
virtual void warning(const char *warnVisGroup, const OdError &err)
virtual OdDbBaseHostAppServices * getDgnHostAppServices() const
virtual const OdString companyName()
virtual ~OdDbHostAppServices()
virtual ProdIdCode prodcode()
virtual OdDbDatabasePtr readFile(OdStreamBuf *pStreamBuf, bool allowCPConversion=false, bool partialLoad=false, const OdPassword &password=OdPassword())
virtual OdResult brepBuilder(OdBrepBuilder &brepBuilder, BrepType bbType)
TD_USING(OdDbBaseHostAppServices::warning)
virtual OdDbDatabasePtr createDatabase(bool createDefault=true, OdDb::MeasurementValue measurement=OdDb::kEnglish) const
virtual OdDbDatabasePtr recoverFile(OdStreamBuf *pStreamBuf, OdDbAuditInfo *pAuditInfo=0, const OdPassword &password=OdPassword())
virtual bool doFullCRCCheck()
OdString(OD_T(".")))
virtual void releaseProgressMeter(OdDbHostAppProgressMeter *pProgressMeter)
virtual void warning(const OdError &err)
virtual OdDbLayoutManagerPtr layoutManager() const
virtual const OdString program()
OdString description() const
virtual OdResult initBrepBuilder(OdBrepBuilder &brepBuilder, BrepType brepType)=0
const OdChar * c_str() const
Definition OdString.h:205
FIRSTDLL_EXPORT_STATIC static const OdString kEmpty
Definition OdString.h:100
MeasurementValue
Definition OdaDefs.h:442
@ kEnglish
English system.
Definition OdaDefs.h:443
FileShareMode
Definition OdStreamBuf.h:65
@ kShareDenyNo
Definition OdStreamBuf.h:69
FileAccessMode
Definition OdStreamBuf.h:48
@ kFileRead
Definition OdStreamBuf.h:49