comparison transform/ModelTransformerFactory.h @ 924:85879408f665 tonioni

Cancel async layer creation in Tony when selection is changed during it
author Chris Cannam
date Mon, 16 Jun 2014 09:28:12 +0100
parents a2689db084f4
children d03b3d956358
comparison
equal deleted inserted replaced
923:defbe5bc47b7 924:85879408f665
82 82
83 /** 83 /**
84 * Return the output model resulting from applying the named 84 * Return the output model resulting from applying the named
85 * transform to the given input model. The transform may still be 85 * transform to the given input model. The transform may still be
86 * working in the background when the model is returned; check the 86 * working in the background when the model is returned; check the
87 * output model's isReady completion status for more details. 87 * output model's isReady completion status for more details. To
88 * cancel a background transform, call abandon() on its model.
88 * 89 *
89 * If the transform is unknown or the input model is not an 90 * If the transform is unknown or the input model is not an
90 * appropriate type for the given transform, or if some other 91 * appropriate type for the given transform, or if some other
91 * problem occurs, return 0. Set message if there is any error or 92 * problem occurs, return 0. Set message if there is any error or
92 * warning to report. 93 * warning to report.
114 * use the same plugin, parameters, and programs. The plugin will 115 * use the same plugin, parameters, and programs. The plugin will
115 * be run once only, but more than one output will be harvested 116 * be run once only, but more than one output will be harvested
116 * (as appropriate). Models will be returned in the same order as 117 * (as appropriate). Models will be returned in the same order as
117 * the transforms were given. The plugin may still be working in 118 * the transforms were given. The plugin may still be working in
118 * the background when the model is returned; check the output 119 * the background when the model is returned; check the output
119 * models' isReady completion statuses for more details. 120 * models' isReady completion statuses for more details. To cancel
121 * a background transform, call abandon() on its model.
120 * 122 *
121 * If a transform is unknown or the transforms are insufficiently 123 * If a transform is unknown or the transforms are insufficiently
122 * closely related or the input model is not an appropriate type 124 * closely related or the input model is not an appropriate type
123 * for the given transform, or if some other problem occurs, 125 * for the given transform, or if some other problem occurs,
124 * return 0. Set message if there is any error or warning to 126 * return 0. Set message if there is any error or warning to
128 * processing. (For example, a transform that splits an output 130 * processing. (For example, a transform that splits an output
129 * into multiple one-per-bin models.) If an additionalModelHandler 131 * into multiple one-per-bin models.) If an additionalModelHandler
130 * is provided here, its moreModelsAvailable method will be called 132 * is provided here, its moreModelsAvailable method will be called
131 * when those models become available, and ownership of those 133 * when those models become available, and ownership of those
132 * models will be transferred to the handler. Otherwise (if the 134 * models will be transferred to the handler. Otherwise (if the
133 * handler is null) any such models will be discarded. 135 * handler is null) any such models will be discarded. Note that
136 * calling abandon() on any one of the models returned by
137 * transformMultiple is sufficient to cancel all background
138 * transform activity associated with these output models.
134 * 139 *
135 * The returned models are owned by the caller and must be deleted 140 * The returned models are owned by the caller and must be deleted
136 * when no longer needed. 141 * when no longer needed.
137 */ 142 */
138 std::vector<Model *> transformMultiple(const Transforms &transform, 143 std::vector<Model *> transformMultiple(const Transforms &transform,