source: branches/autoquest-core-tasktrees-alignment/src/main/java/de/ugoe/cs/autoquest/tasktrees/treeifc/ITaskModel.java @ 1734

Last change on this file since 1734 was 1734, checked in by rkrimmel, 10 years ago

Added automatically created javadoc, still needs to be commented properly though

  • Property svn:executable set to *
File size: 2.4 KB
Line 
1//   Copyright 2012 Georg-August-Universität Göttingen, Germany
2//
3//   Licensed under the Apache License, Version 2.0 (the "License");
4//   you may not use this file except in compliance with the License.
5//   You may obtain a copy of the License at
6//
7//       http://www.apache.org/licenses/LICENSE-2.0
8//
9//   Unless required by applicable law or agreed to in writing, software
10//   distributed under the License is distributed on an "AS IS" BASIS,
11//   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12//   See the License for the specific language governing permissions and
13//   limitations under the License.
14
15package de.ugoe.cs.autoquest.tasktrees.treeifc;
16
17import java.io.Serializable;
18import java.util.Collection;
19import java.util.List;
20
21// TODO: Auto-generated Javadoc
22/**
23 * <p>
24 * This class represents a complete task model. A task model within AutoQUEST is
25 * usually generated based on user sessions. Therefore, the task model consists
26 * of the user sessions, the models of the identified tasks, as well as further
27 * information about the tasks (e.g. their occurrence count) for statistical
28 * processing.
29 * </p>
30 *
31 * @author 2012, Patrick Harms
32 */
33public interface ITaskModel extends Cloneable, Serializable {
34
35        /**
36         * <p>
37         * creates a deep clone of the model including all tasks and user sessions.
38         * </p>
39         *
40         * @return as described
41         */
42        public ITaskModel clone();
43
44        /**
45         * <p>
46         * returns a list of all metrics calculated by this model for the tasks and
47         * stored in the respective task infos
48         * </p>.
49         *
50         * @return as described
51         */
52        public TaskMetric[] getAllMetrics();
53
54        /**
55         * <p>
56         * returns additional info for the provided task. The method returns null,
57         * if the provided task does not belong to the model.
58         * </p>
59         *
60         * @param task the task
61         * @return as described
62         */
63        public ITaskInfo getTaskInfo(ITask task);
64
65        /**
66         * <p>
67         * returns the tasks belonging to the model. The return value must not be
68         * null. However, it may be an empty list, if the model is an empty model.
69         * </p>
70         *
71         * @return as described
72         */
73        public Collection<ITask> getTasks();
74
75        /**
76         * <p>
77         * returns the user sessions belonging to the model. The return value may be
78         * null in the case no user sessions are associated the the tasks in the
79         * model.
80         * </p>
81         *
82         * @return as described
83         */
84        public List<IUserSession> getUserSessions();
85
86}
Note: See TracBrowser for help on using the repository browser.