Changesets: Slicer

2145-support-for-installing-extension-from-file 724b48f6

2013-03-16 18:34:22

pieper

Details Diff
STYLE: clean up misleading warning

No need to warn that the directory is being deleted.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21817 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Libs/MRML/Logic/vtkMRMLApplicationLogic.cxx Diff File

2145-support-for-installing-extension-from-file fc8b092e

2013-03-16 12:59:33

demian

Details Diff
COMP: Fixed compatibility with VS problems in my previous commit

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21816 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/CLI/FiberBundleLabelSelect/FiberBundleLabelSelect.cxx Diff File

2145-support-for-installing-extension-from-file 9cc98285

2013-03-16 10:16:31

demian

Details Diff
ENH: Made naming of new modules more coherent

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21815 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/CLI/CMakeLists.txt Diff File

2145-support-for-installing-extension-from-file 90b37eb9

2013-03-16 09:07:17

demian

Details Diff
ENH: Moved the FiberBundleToLabelMap module to Diffusion->Tractography

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21814 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/Scripted/FiberBundleToLabelMap/FiberBundleToLabelMap.py Diff File

2145-support-for-installing-extension-from-file a248de05

2013-03-16 08:55:23

demian

Details Diff
ENH: Moved the DTIimport/export modules to the legacy menu as the support for Nifti is now in the main slicer code

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21813 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/CLI/DTIImportExport/DTIexport.xml Diff File
mod - Modules/CLI/DTIImportExport/DTIimport.xml Diff File

2145-support-for-installing-extension-from-file 1a466a32

2013-03-16 08:35:20

demian

Details Diff
BUG: Corrected bug introduced due to interface change

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21812 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/Loadable/TractographyDisplay/Widgets/qSlicerTractographyDisplayWidget.cxx Diff File

2145-support-for-installing-extension-from-file 807ddd3f

2013-03-16 08:35:16

demian

Details Diff
ENH: Added a module to select tracts using labelmaps

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21811 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/CLI/CMakeLists.txt Diff File
add - Modules/CLI/TractographyLabelSelect/CMakeLists.txt Diff File
add - Modules/CLI/TractographyLabelSelect/TractographyLabelSelect.cxx Diff File
add - Modules/CLI/TractographyLabelSelect/TractographyLabelSelect.xml Diff File
mod - Modules/Loadable/TractographyDisplay/Widgets/qSlicerTractographyDisplayWidget.cxx Diff File

2145-support-for-installing-extension-from-file 5862d5c3

2013-03-15 10:22:50

alexy

Details Diff
ENH: 2727. Implemented new generic MRML node reference API in the vtkMRMLNode class. Implemented vtkMRMLDisplayableNode, vtkMRMLStorableNode, vtkMRMLTransformNode node using new API. Added tests to Libs/MRML/Core/Testing/vtkMRMLNodeTest1.cxx. See below for more details on the API.

== Goal ==
This page explains how to create a MRML node that reference and observes
other MRML nodes.

== History ==
In Slicer4.2 prior to March of 2013 each MRML node that contained
references to other MRML nodes (for example each vtkMRMLDispalyableNode contained
a reference to an instance vtkMRMLDisplayNode) was responsible for
managing the references internally. This involved complicated logic and
bookkeeping to maintain the references in sync when importing scenes,
adding/deleting nodes, modifying referenced nodes, etc.

When creating a new node with the reference to another node the following
methods needed to be created/updated to handle the references:


* Copy
* PrintSelf
* ReadXMLAttributes
* WriteXML
* ProcessMRMLEvents
* UpdateReferenceIS
* SetSceneRefeecnes
* UpdateScene
* UpdateReferences
* SetAndObserveReferenedNode

== New API ==
The new node reference API automatically takes care of read/write/copy of
node references, updating references on scene import, adding and deleting
nodes. All that functionality in implemented the vtkMRMLNode base
class. The only thing that needs to happen in the derived MRML node class
(usually in the constructor of the class)
is a call to vtkMRMLNode::AddNodeReferenceRole(const char *referenceRole,
const char *mrmlAttributeName)
that takes a unique string defining the reference role between this node
and the referenced node, and a MRML attribute name for storing the
reference in the .mrml file.

The only other call that is needed is either:
vtkMRMLNode* SetAndObserveNodeReferenceID(const char* referenceRole , const
char* referencedNodeID, vtkIntArray *events=0);
or
vtkMRMLNode* AddAndObserveNodeReferenceID(const char* referenceRole , const
char* referencedNodeID, vtkIntArray *events=0);
if the multiple instances of this reference are allowed.

vtkMRMLNode also provides virtual callbacks that can be extended in the
derived calsses:
* OnNodeReferenceAdded(vtkMRMLNodeReference *reference)
* OnNodeReferenceRemoved(vtkMRMLNodeReference *reference)
* OnNodeReferenceModified(vtkMRMLNodeReference *reference)

By default those methods generate the following events:
* vtkMRMLNode::ReferenceAddedEvent
* vtkMRMLNode::ReferenceRemovedEvent
* vtkMRMLNode::ReferenceModifiedEvent

In the derived classes those methods could be extended using vtkMRMLNode
API that allows querying of node's references:

* char *GetNthNodeReferenceID(const char* referenceRole, int n);
* vtkMRMLNode* GetNthNodeReference(const char* referenceRole, int n);
* int GetNumberOfNodeReferences(const char* referenceRole);
* etc.

For full API see:

http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk/Libs/MRML/Core/vtkMRMLNode.h?view=log

Currently the following MRML nodes are implemented using new API:
* vtkMRMLStorableNode
* vtkMRMLTransformableNode
* vtkMRMLDisplayableNode

Other references to MRML nodes such as to vtkMRMLColorTableNode, vtkMRMLDiffusionTensorDisplayPropertiesNode are currently not using new API.

Module parameter nodes that contain references to input/output Volume/Model, etc. nodes may or may not require a new API since not all of them contain logic to deal with reference changes.

== Examples ==
* vtkMRMLTransformableNode implementation:
http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk/Libs/MRML/Core/vtkMRMLTransformableNode.h?view=log
* vtkMRMLDisplayableNodeimplementation:
http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk/Libs/MRML/Core/vtkMRMLDisplayableNode.h?view=log
* vtkMRMLStorableNodeimplementation:
http://viewvc.slicer.org/viewvc.cgi/Slicer4/trunk/Libs/MRML/Core/vtkMRMLStorableNode.h?view=log


git-svn-id: http://svn.slicer.org/Slicer4/trunk@21810 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Libs/MRML/Core/CMakeLists.txt Diff File
mod - Libs/MRML/Core/Testing/vtkMRMLDisplayableNodeTest1.cxx Diff File
mod - Libs/MRML/Core/Testing/vtkMRMLNodeTest1.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLDisplayableNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLDisplayableNode.h Diff File
mod - Libs/MRML/Core/vtkMRMLModelDisplayNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLModelNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLModelNode.h Diff File
mod - Libs/MRML/Core/vtkMRMLNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLNode.h Diff File
add - Libs/MRML/Core/vtkMRMLNodeReference.cxx Diff File
add - Libs/MRML/Core/vtkMRMLNodeReference.h Diff File
mod - Libs/MRML/Core/vtkMRMLScene.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLStorableNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLStorableNode.h Diff File
mod - Libs/MRML/Core/vtkMRMLTransformNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLTransformableNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLTransformableNode.h Diff File
mod - Libs/MRML/Core/vtkMRMLVolumeNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLVolumeNode.h Diff File

2145-support-for-installing-extension-from-file 62f06595

2013-03-15 08:56:35

pieper

Details Diff
ENH: expose qMRMLCheckableNodeComboBox methods to python

Per request from Kostro Daniel on slicer-dev list.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21809 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Libs/MRML/Widgets/qMRMLCheckableNodeComboBox.h Diff File

2145-support-for-installing-extension-from-file 44c354b9

2013-03-14 23:47:47

pohl

Details Diff
BUG: not all of CSF was part of the sub atlas

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21808 3bd1e089-480b-0410-8dfb-8563597acbee
mod - SuperBuild/External_EMSegment.cmake Diff File

2145-support-for-installing-extension-from-file ad26724b

2013-03-14 18:48:45

pohl

Details Diff
BUG: figured out why transitioning to SpatialAtlas Step takes so long when loading the FullParcellation task and removed bug when setting atlas or subparcellation to None - it was not saved in mrml

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21807 3bd1e089-480b-0410-8dfb-8563597acbee
mod - SuperBuild/External_EMSegment.cmake Diff File

2145-support-for-installing-extension-from-file 1d2d8923

2013-03-13 01:24:57

jcfr

Details Diff
COMP: Ensure BRAINSTools uses Slicer ExternalData by replacing it.

This is obviously a hack allowing to use ExternalData withing Slicer while
building BRAINSTools. An issue has been reported upstream.
See https://github.com/BRAINSia/BRAINSTools/issues/3

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21806 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/CLI/CMakeLists.txt Diff File

2145-support-for-installing-extension-from-file 4bf8e422

2013-03-13 01:24:55

jcfr

Details Diff
COMP: Update ExternalData and remove hack in SLICER_ADD_PYTHON_UNITTEST

ExternalData module has been updated to preserve escaped semicolons during
argument expansion.

Details: http://cmake.org/gitweb?p=cmake.git;a=commit;h=1823ab4d76d8efe79bed85328a3f8c74c7d625bd

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21805 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/QTCore/qSlicerCoreApplication.cxx Diff File
mod - CMake/ExternalData.cmake Diff File
mod - CMake/SlicerMacroPythonTesting.cmake Diff File

2145-support-for-installing-extension-from-file f8cfc79e

2013-03-13 01:24:53

jcfr

Details Diff
STYLE: Update BRAINSTools project to remove extra message debug statement

See https://github.com/BRAINSia/BRAINSTools/pull/8

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21804 3bd1e089-480b-0410-8dfb-8563597acbee
mod - SuperBuild/External_BRAINSTools.cmake Diff File

2145-support-for-installing-extension-from-file 0ec10dae

2013-03-13 01:24:51

jcfr

Details Diff
COMP: Update DoubleConvert tag and remove hack to manually add "-fPIC"

This reverts commit r21792 and also update DoubleConvert external project.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21803 3bd1e089-480b-0410-8dfb-8563597acbee
mod - SuperBuild/External_DoubleConvert.cmake Diff File

2145-support-for-installing-extension-from-file 84b046a9

2013-03-12 22:07:20

alexy

Details Diff
BUG: Reverted erroneously commit from github


git-svn-id: http://svn.slicer.org/Slicer4/trunk@21802 3bd1e089-480b-0410-8dfb-8563597acbee
rm - Libs/MRML/Core/MRMLReferencedNode.h Diff File
mod - Libs/MRML/Core/vtkMRMLDisplayableNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLNode.h Diff File

2145-support-for-installing-extension-from-file 65cb25b9

2013-03-12 16:30:02

mccormic

Details Diff
ENH: Bump SlicerExecutionModel ExternalProject to be11bda829.

Include improvements to GenerateCLP.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21801 3bd1e089-480b-0410-8dfb-8563597acbee
mod - SuperBuild/External_SlicerExecutionModel.cmake Diff File

2145-support-for-installing-extension-from-file 3459294c

2013-03-12 14:06:23

alexy

Details Diff
ENH: implementation of vtkMRMLNode reference API

Implemented Get/Set/SetAndObserve methods in vtkMRMLNode class

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21800 3bd1e089-480b-0410-8dfb-8563597acbee
add - Libs/MRML/Core/MRMLReferencedNode.h Diff File
mod - Libs/MRML/Core/vtkMRMLDisplayableNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLNode.cxx Diff File
mod - Libs/MRML/Core/vtkMRMLNode.h Diff File

2145-support-for-installing-extension-from-file 8ff71793

2013-03-12 14:06:14

alexy

Details Diff
ENH: Added first cut of vtkMRMLNode reference API

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21799 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Libs/MRML/Core/vtkMRMLNode.h Diff File

2145-support-for-installing-extension-from-file 0090216d

2013-03-12 07:20:21

jcfr

Details Diff
STYLE: Fix typo and remove "Qt" from message associated with slicerMacroBuildQtModule

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21798 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Applications/SlicerApp/Testing/Python/CMakeLists.txt Diff File
mod - CMake/SlicerMacroBuildQtModule.cmake Diff File

2145-support-for-installing-extension-from-file 6b858f21

2013-03-12 07:20:19

jcfr

Details Diff
ENH: Add python unitTest testing slicer.util.{saveNode, saveScene} methods

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21797 3bd1e089-480b-0410-8dfb-8563597acbee
add - Applications/SlicerApp/Data/Input/MR-head.nrrd.md5 Diff File
mod - Applications/SlicerApp/Testing/Python/CMakeLists.txt Diff File
add - Base/Python/slicer/tests/test_slicer_util_save.py Diff File
mod - Base/QTCore/qSlicerCoreApplication.cxx Diff File

2145-support-for-installing-extension-from-file 5dc01e11

2013-03-12 07:20:16

jcfr

Details Diff
ENH: Add saveNode and saveScene to python API

Example:

n = slicer.util.GetNode('MRHead')
slicer.util.saveNode(n, '/tmp/foo.nrrd') # Save node data

slicer.util.saveScene('/tmp/currentscene.mrml') # Save scene as MRML file

slicer.util.saveScene('/tmp/currentscene.mrb') # Save scene as MRB file

slicer.util.saveScene('/tmp/currentscene') # Save scene as directory

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21796 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/slicer/util.py Diff File
mod - Base/QTCore/qSlicerCoreIOManager.h Diff File

2145-support-for-installing-extension-from-file 8bf7c8ee

2013-03-12 07:20:14

jcfr

Details Diff
ENH: Clean code and add command line option "--temporary-path"

Remove unused headers

Remove tempDirectory initially added with r11985,
qSlicerCoreApplication::temporaryPath (added with r15424) should be used
instead.

Calling slicer with both --testing and --temporary-path options returns
the directory associated with testing.

$ ./Slicer --temporary-path
/tmp/Slicer

$ ./Slicer --testing --temporary-path
/tmp/Slicer-tmp

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21795 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Applications/SlicerApp/CMakeLists.txt Diff File
mod - Base/QTApp/qSlicerApplicationHelper.cxx Diff File
mod - Base/QTCore/qSlicerCoreApplication.cxx Diff File
mod - Base/QTCore/qSlicerCoreCommandOptions.cxx Diff File
mod - Base/QTCore/qSlicerCoreCommandOptions.h Diff File

2145-support-for-installing-extension-from-file 0aaf5433

2013-03-12 07:20:11

jcfr

Details Diff
COMP: Update Slicer test macros to support ExternalData

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21794 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/QTCore/qSlicerCoreApplication.cxx Diff File
mod - CMake/SlicerConfig.cmake.in Diff File
mod - CMake/SlicerMacroPythonTesting.cmake Diff File
mod - CMake/SlicerMacroSimpleTest.cmake Diff File
mod - CMakeLists.txt Diff File

2145-support-for-installing-extension-from-file 42c84df8

2013-03-12 07:20:09

jcfr

Details Diff
COMP: Update ExternalData module to version 1fd8d01 available in recent CMake

It includes the following fixes:

2013-02-04 Brad King ExternalData: Attach download rules to content links...
2013-01-30 Brad King ExternalData: Collapse ../ components in DATA{} paths
2013-01-30 Brad King ExternalData: Add support for SHA 1 and 2 hash algorithms
2013-01-30 Brad King ExternalData: Generalize hash algo/ext handling
2013-01-30 Brad King ExternalData: Allow DATA{} syntax to reference directories
2013-01-30 Brad King ExternalData: Allow ()-groups in series match regex
2013-01-29 Brad King ExternalData: Improve series matching using an explicit...
2013-01-28 Brad King ExternalData: Remove unused private interface
2013-01-28 Brad King ExternalData: Cleanup stray TODO and typo in comments
2013-01-28 Brad King ExternalData: Do not match directory names when resolvi...
2013-01-24 Brad King ExternalData: Remove compatibility with CMake < 2.8.5
2013-01-24 Brad King Add ExternalData module

See here for details: http://cmake.org/gitweb?p=cmake.git;a=history;f=Modules/ExternalData.cmake;h=9d84f8d135ae8b4e86d78a2e3b570a3b520445a1;hb=HEAD

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21793 3bd1e089-480b-0410-8dfb-8563597acbee
mod - CMake/ExternalData.cmake Diff File
 First  Prev  1 2 3 ... 10 ... 20 ... 30 ... 37 38 39 40 41 42 43 ... 50 ... 55 56 57  Next  Last