[Paraview] OpenGL Backend Identification

Marcus D. Hanwell marcus.hanwell at kitware.com
Thu Dec 10 09:47:48 EST 2015


Yes, and if the header doesn't exist nor does any backend, so that
seems reasonable too.

On Thu, Dec 10, 2015 at 9:29 AM, Ken Martin <ken.martin at kitware.com> wrote:
> Maybe vtkRenderingOpenGLConfigure.h ?
>
> That header is configured from a .in file for both the old and new backend.
> We could define VTK_OPENGL2 in that header and applications could include it
> as needed.  That header appears to get installed. The only issue I see is
> that if someone built VTK with no rendering then that header file might not
> exist.
>
> Does that work? If so I can put the VTK_OPENGL2 definition in there.
>
>
> On Wed, Dec 9, 2015 at 12:43 PM, Marcus D. Hanwell
> <marcus.hanwell at kitware.com> wrote:
>>
>> vtkConfigure.h is definitely not the right place for this, and we
>> worked pretty hard to move things out of it that didn't need to be
>> there. It will cause almost all classes to recompile, and nothing in
>> common is even aware of rendering backends. There is a configured
>> header in the modules that record some settings (such as Cocoa,
>> Carbon, X11, etc as far as I remember) that would be more appropriate.
>>
>> I haven't looked at the code in a while, adding something to configure
>> it in seems reasonable. It is something we originally hoped could be
>> decided at link time, and it has since become something that can only
>> really be decided at compile time (which backend to use). With that in
>> mind, you could simply define something in vtkRenderingCore's
>> configured header stating which backend it was compiled with.
>>
>> Marcus
>>
>> On Wed, Dec 9, 2015 at 12:00 PM, Shawn Waldon <shawn.waldon at kitware.com>
>> wrote:
>> > There *is* a global VTK configuration header.  vtkConfigure.h has many
>> > of
>> > these definitions and is included in vtkObjectBase.h (so pretty much
>> > everywhere).  But you may be right that this should go somewhere in the
>> > rendering code rather than in there.  I am not sure that vtkRenderWindow
>> > is
>> > the best location for it, but I am not as familiar with the code that
>> > uses
>> > the compiler definition.  Does everywhere that #ifdefs VTK_OPENGL2
>> > include
>> > vtkRenderWindow.h?  Or would we have to pull in that header just for
>> > that
>> > macro?
>> >
>> > Shawn
>> >
>> > On Wed, Dec 9, 2015 at 11:54 AM, Tim Thirion <tim.thirion at kitware.com>
>> > wrote:
>> >>
>> >> Yes, that was my original question. :) Is the vtkRenderWindow the best
>> >> place for this? I'm happy to add it.
>> >>
>> >> On Wed, Dec 9, 2015 at 11:12 AM, Joachim Pouderoux
>> >> <joachim.pouderoux at kitware.com> wrote:
>> >>>
>> >>> BTW, I took a look but I do not see any way for a third party VTK or
>> >>> PV
>> >>> application that would not use CMake machinery (and use
>> >>> VTK_OPENGL_BACKEND)
>> >>> to know if the VTK it uses is based on OpenGL backend 1 or 2.
>> >>> VTK_OPENGL2 is a compiler definition provided to build VTK or PV but,
>> >>> as
>> >>> there is no global VTK configuration header, shouldn't we add a
>> >>> function in
>> >>> vtkRenderWindow to return the version of the backend it is based on?
>> >>>
>> >>> Joachim Pouderoux
>> >>>
>> >>> PhD, Technical Expert
>> >>> Kitware SAS
>> >>>
>> >>>
>> >>> 2015-12-08 19:58 GMT+01:00 Ben Boeckel <ben.boeckel at kitware.com>:
>> >>>>
>> >>>> On Mon, Dec 07, 2015 at 14:49:51 -0500, Tim Thirion wrote:
>> >>>> > I'm looking to provide run-time identification of the current
>> >>>> > OpenGL
>> >>>> > backend in use. Some questions:
>> >>>> >
>> >>>> > 1. VTK #defines VTK_OPENGL2, but ParaView #defines VTKGL2. Is there
>> >>>> > a
>> >>>> > particular reason we have both?
>> >>>>
>> >>>> VTK used to have both. VTKGL2 should be migrated to VTK_OPENGL2 (as
>> >>>> VTK
>> >>>> did).
>> >>>>
>> >>>> > 2. Is there an ideal place to define such a constant? Perhaps on
>> >>>> > the
>> >>>> > render
>> >>>> > window?
>> >>>>
>> >>>> The About dialog has a list of information already (versions of
>> >>>> Python,
>> >>>> matplotlib, numpy, Qt, etc.).
>> >>>>
>> >>>> --Ben
>> >>>> _______________________________________________
>> >>>> Powered by www.kitware.com
>> >>>>
>> >>>> Visit other Kitware open-source projects at
>> >>>> http://www.kitware.com/opensource/opensource.html
>> >>>>
>> >>>> Please keep messages on-topic and check the ParaView Wiki at:
>> >>>> http://paraview.org/Wiki/ParaView
>> >>>>
>> >>>> Search the list archives at: http://markmail.org/search/?q=ParaView
>> >>>>
>> >>>> Follow this link to subscribe/unsubscribe:
>> >>>> http://public.kitware.com/mailman/listinfo/paraview
>> >>>
>> >>>
>> >>
>> >>
>> >> _______________________________________________
>> >> Powered by www.kitware.com
>> >>
>> >> Visit other Kitware open-source projects at
>> >> http://www.kitware.com/opensource/opensource.html
>> >>
>> >> Please keep messages on-topic and check the ParaView Wiki at:
>> >> http://paraview.org/Wiki/ParaView
>> >>
>> >> Search the list archives at: http://markmail.org/search/?q=ParaView
>> >>
>> >> Follow this link to subscribe/unsubscribe:
>> >> http://public.kitware.com/mailman/listinfo/paraview
>> >>
>> >
>> >
>> > _______________________________________________
>> > Powered by www.kitware.com
>> >
>> > Visit other Kitware open-source projects at
>> > http://www.kitware.com/opensource/opensource.html
>> >
>> > Please keep messages on-topic and check the ParaView Wiki at:
>> > http://paraview.org/Wiki/ParaView
>> >
>> > Search the list archives at: http://markmail.org/search/?q=ParaView
>> >
>> > Follow this link to subscribe/unsubscribe:
>> > http://public.kitware.com/mailman/listinfo/paraview
>> >
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the ParaView Wiki at:
>> http://paraview.org/Wiki/ParaView
>>
>> Search the list archives at: http://markmail.org/search/?q=ParaView
>>
>> Follow this link to subscribe/unsubscribe:
>> http://public.kitware.com/mailman/listinfo/paraview
>
>
>
>
> --
> Ken Martin PhD
> Chairman & CFO
> Kitware Inc.
> 28 Corporate Drive
> Clifton Park NY 12065
> 518 371 3971
>
> This communication, including all attachments, contains confidential and
> legally privileged information, and it is intended only for the use of the
> addressee.  Access to this email by anyone else is unauthorized. If you are
> not the intended recipient, any disclosure, copying, distribution or any
> action taken in reliance on it is prohibited and may be unlawful. If you
> received this communication in error please notify us immediately and
> destroy the original message.  Thank you.


More information about the ParaView mailing list