[Smtk-developers] Pie in the sky
David Thompson
david.thompson at kitware.com
Tue Mar 20 16:25:32 EDT 2018
> In this configuration, where would the Pybind11 binding code and nlohmann json code go?
I assumed they would stay as subdirectories of whatever source they wrap/serialize, but we could move them up to
core/json/smtk/{attribute, mesh, model}/jsonResource.{h,cxx}
core/pybind11/smtk/{attribute, mesh, model}/Py{Attribute, Mesh, Model}.cxx
extension/json/smtk/{attribute, mesh, model}/jsonResource.{h,cxx}
extension/pybind11/smtk/{attribute, mesh, model}/Py{Attribute, Mesh, Model}.cxx
if you prefer.
David
>
>> On Mar 20, 2018, at 4:06 PM, David Thompson <david.thompson at kitware.com> wrote:
>>
>> Hi all,
>>
>> Following up on the "pie in the sky" talk we had at the meeting today, what about this directory-structure change to go along with the attribute-collection/model-manager/mesh-collection rename:
>>
>> core/smtk/{PublicPointerDefs,SharedFromThis, ...}.h
>> core/smtk/{attribute, mesh, model}/Resource.{h,cxx}
>> core/smtk/model/Session.h
>>
>> extension/smtk/model/polygon/{Resource,Session,...}.{h,cxx}
>> extension/smtk/paraview/{server, components, ...}
>> extension/smtk/qt/{qtAttributeView,...}.{h,cxx}
>> extension/smtk/vtk/{source, ...}
>>
>> testing/smtk/{attribute, mesh, model}/{cxx,python}/...
>>
>> applications/{template-editor, attribute-preview, ...}
>> cmake
>> data
>> doc/{userguide,tutorials,reference}
>> python/smtk/{__init__.py, testing.py, simple.py}
>> utilities
>>
>> Everything in core would become smtkCore. Subdirectories of extension/smtk would be separate projects with their own library(ies). In the end, projects in both core and extensions would install their public headers to ${CMAKE_INSTALL_PREFIX}/include/smtk/.... That way, directories could always correspond to namespaces (starting with "smtk", not core or extension) and there wouldn't be a question any more about whether Qt stuff should live in smtk::extension or not -- if it lived in a namespace at all, it would be smtk::qt.
>>
>> Moving testing out of the core directory would make it clear that tests could depend on extensions (such as polygon/discrete/mesh model resources). Tests would live in the directory/namespace of the most abstract thing they tested, so a test of the model resource that just happened to use a polygon model would live in testing/smtk/model while tests of the polygon session would live in testing/smtk/model/polygon.
>>
>> David
>> _______________________________________________
>> Smtk-developers mailing list
>> Smtk-developers at smtk.org
>> https://smtk.org/mailman/listinfo/smtk-developers
>
More information about the Smtk-developers
mailing list