MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0023814Open CASCADE[OCCT] OCCT:Visualizationpublic2013-03-05 09:322014-11-11 12:53
Reporterkgv 
Assigned Tobugmaster 
PrioritynormalSeverityintegration request 
StatusclosedResolutionfixed 
PlatformAOSLOS VersionL
Product Version 
Target Version[OCCT] 6.8.0Fixed in Version[OCCT] 6.8.0 
Summary0023814: Drop plugin interface for Graphic3d_GraphicDriver instantiation
DescriptionInstantiation of OpenGl_GraphicDriver using dynamically loaded library is pointless complication nowadays since there no any alternative implementation.

This is suggested to:
- Drop Graphic3d_GraphicDriver::Begin() and ::End() methods (always performed right after driver instantiation and before destruction).
- Drop dummy argument for Graphic3d_GraphicDriver constructor with library name.
- Drop Graphic3d::InitGraphicDriver() function. Application code should explicitly link against TKOpenGl toolkit and instantiate OpenGl_GraphicDriver class.
- Drop MetaGraphicDriverFactory implementation within TKOpenGl.
- Update WOK to remove CSF_GraphicShr from the generated env.bat.
- CSF_GraphicShr variable should be removed from the OCCT overview.
TagsNo tags attached.
Test case numberNot needed
Attached Files

- Relationships
related to 0023712closeddbv Open CASCADE Remove the dependency on the Aspect_GraphicDevice from Aspect_Window 
related to 0023067closedsan Open CASCADE OpenGl package API needed by UserDraw feature is not exported 
related to 0023975closedibs Open CASCADE Remove CSF_GraphicShr environment variable from the generated env.bat 
related to 0024895closedbugmaster Community 'PLUGINFACTORY' has C-linkage specified, but returns user-defined type 'Handle_Standard_Transient' which is incompatible with C 

-  Notes
(0024622)
szv (manager)
2013-06-04 10:41

Imho, it could be still useful to keep the possibility to replace the OpenGl driver by another one (like DirectX). For that, we could introduce global methods, something like:

void Graphic3d::SetDriver(const Handle(Graphic3d_GraphicDriver) &aDriver);

const Handle(Graphic3d_GraphicDriver)& Graphic3d::GetDriver();
(0029948)
kgv (developer)
2014-07-03 10:52

Patch is ready for review in branches CR23814 for OCCT and Products.
(0030016)
apl (developer)
2014-07-08 19:10

Dear Bugmaster,

Both branches were reviewed. Please test them.
(0030076)
mkv (tester)
2014-07-11 15:07

Dear BugMaster,

Branch CR23814 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: c0e9662ee3dbad0ff3f29cbe1abcd14e3fb8c7a8

Number of compiler warnings:

occt component :
Linux: 15 (15 on master)
Windows: 0 (0 on master)
MacOS: 199 (199 on master)

products component :
Linux: 11 (11 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 349248428 / 349968948
Total CPU difference: 53464.000000000124 / 52504.370000000075

Testing on Windows:
Total MEMORY difference: 376612504 / 377380348
Total CPU difference: 40231.03125 / 39629.96875

There are no differences in images found by testdiff.
(0030077)
mkv (tester)
2014-07-11 15:19

Dear kgv,
could you please correct file dox/overview/overview.md
(CSF_GraphicShr variable should be removed from the OCCT overview)
(0030078)
kgv (developer)
2014-07-11 15:27

Dear mkv,

>> could you please correct file dox/overview/overview.md
>> (CSF_GraphicShr variable should be removed from the OCCT overview)
sorry but I can not find occurrences of CSF_GraphicShr in current version of documentation.
(0030083)
mkv (tester)
2014-07-11 15:54

OK.
CR23814 is TESTED.
(0030324)
git (administrator)
2014-07-22 16:04

Branch CR23814 has been deleted by inv.

SHA-1: c0e9662ee3dbad0ff3f29cbe1abcd14e3fb8c7a8

- Related Changesets
occt: master fe9fc669
Timestamp: 2014-07-03 06:47:42
Author: kgv
Committer: bugmaster
Details ] Diff ]
0023814: Drop plugin interface for Graphic3d_GraphicDriver instantiation

Drop Graphic3d_GraphicDriver::Begin() and ::End() methods.
Initialization is performed within driver constructor.

Drop dummy argument for Graphic3d_GraphicDriver constructor with library name.
Display connection now should be set instead

Drop Graphic3d::InitGraphicDriver() function and Graphic3d.hxx header.
Application code should explicitly link against TKOpenGl toolkit and instantiate OpenGl_GraphicDriver class.

Drop MetaGraphicDriverFactory implementation within TKOpenGl.
mod - samples/CSharp/OCCTProxy/OCCTProxy.cpp Diff ] File ]
mod - samples/mfc/standard/10_Convert/src/WNT/StdAfx.h Diff ] File ]
mod - samples/mfc/standard/Common/StdAfx.h Diff ] File ]
mod - samples/qt/Common/src/DocumentCommon.cxx Diff ] File ]
mod - samples/qt/VoxelDemo/src/Viewer.cpp Diff ] File ]
mod - src/Graphic3d/Graphic3d.cdl Diff ] File ]
rm - src/Graphic3d/Graphic3d.cxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_GraphicDriver.cdl Diff ] File ]
mod - src/Graphic3d/Graphic3d_GraphicDriver.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_GraphicDriver.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_GraphicDriver.hxx Diff ] File ]
mod - src/QADraw/QADraw.cxx Diff ] File ]
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2013-03-05 09:32 kgv New Issue
2013-03-05 09:32 kgv Assigned To => san
2013-03-05 09:32 kgv Relationship added related to 0023712
2013-03-11 09:58 kgv Relationship added related to 0023067
2013-06-04 08:18 kgv Description Updated View Revisions
2013-06-04 10:41 szv Note Added: 0024622
2013-11-06 15:03 kgv Relationship added related to 0023975
2013-11-06 15:44 kgv Target Version => 6.7.0
2013-12-12 10:53 san Assigned To san => kgv
2013-12-12 10:53 san Status new => assigned
2013-12-12 10:53 san Target Version 6.7.0 => 6.7.1
2014-04-04 18:32 abv Target Version 6.7.1 => 6.8.0
2014-05-05 08:39 kgv Relationship added related to 0024895
2014-07-03 10:52 kgv Note Added: 0029948
2014-07-03 10:52 kgv Assigned To kgv => apl
2014-07-03 10:52 kgv Status assigned => resolved
2014-07-03 10:52 kgv Severity feature => integration request
2014-07-08 19:10 apl Note Added: 0030016
2014-07-08 19:10 apl Assigned To apl => bugmaster
2014-07-08 19:10 apl Status resolved => reviewed
2014-07-09 12:23 mkv Assigned To bugmaster => mkv
2014-07-11 15:07 mkv Note Added: 0030076
2014-07-11 15:19 mkv Note Added: 0030077
2014-07-11 15:20 mkv Test case number => Not needed
2014-07-11 15:20 mkv Assigned To mkv => kgv
2014-07-11 15:20 mkv Status reviewed => feedback
2014-07-11 15:27 kgv Note Added: 0030078
2014-07-11 15:27 kgv Assigned To kgv => mkv
2014-07-11 15:54 mkv Note Added: 0030083
2014-07-11 15:54 mkv Assigned To mkv => bugmaster
2014-07-11 15:54 mkv Status feedback => tested
2014-07-22 15:13 bugmaster Changeset attached => occt master fe9fc669
2014-07-22 15:13 bugmaster Status tested => verified
2014-07-22 15:13 bugmaster Resolution open => fixed
2014-07-22 16:04 git Note Added: 0030324
2014-11-11 12:46 aiv Fixed in Version => 6.8.0
2014-11-11 12:53 aiv Status verified => closed


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker