Source code for ilastik.applets.featureSelection.featureSelectionApplet
###############################################################################
# ilastik: interactive learning and segmentation toolkit
#
# Copyright (C) 2011-2014, the ilastik developers
# <team@ilastik.org>
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# In addition, as a special exception, the copyright holders of
# ilastik give you permission to combine ilastik with applets,
# workflows and plugins which are not covered under the GNU
# General Public License.
#
# See the LICENSE file for details. License information is also available
# on the ilastik web site at:
# http://ilastik.org/license.html
###############################################################################
from ilastik.applets.base.standardApplet import StandardApplet
from opFeatureSelection import OpFeatureSelection
from featureSelectionSerializer import FeatureSelectionSerializer, Ilastik05FeatureSelectionDeserializer
[docs]class FeatureSelectionApplet( StandardApplet ):
"""
This applet allows the user to select sets of input data,
which are provided as outputs in the corresponding top-level applet operator.
"""
def __init__( self, workflow, guiName, projectFileGroupName, filter_implementation='Original' ):
self._filter_implementation = filter_implementation
super(FeatureSelectionApplet, self).__init__(guiName, workflow)
self._serializableItems = [ FeatureSelectionSerializer(self.topLevelOperator, projectFileGroupName),
Ilastik05FeatureSelectionDeserializer(self.topLevelOperator) ]
self.busy = False
@property
def singleLaneOperatorClass(self):
return OpFeatureSelection
@property
def singleLaneOperatorInitArgs(self):
return ((), {'filter_implementation' : self._filter_implementation})
@property
def broadcastingSlots(self):
return ['Scales', 'FeatureIds', 'SelectionMatrix']
@property
def singleLaneGuiClass(self):
from featureSelectionGui import FeatureSelectionGui
return FeatureSelectionGui
# def createSingleLaneGui( self , laneIndex):
# from featureSelectionGui import FeatureSelectionGui
# opFeat = self.topLevelOperator.getLane(laneIndex)
# gui = FeatureSelectionGui( opFeat, self )
# return gui
@property
def dataSerializers(self):
return self._serializableItems