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

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

Used Eclipse code cleanup

  • Property svn:executable set to *
File size: 2.3 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/**
22 * <p>
23 * This class represents a complete task model. A task model within AutoQUEST is
24 * usually generated based on user sessions. Therefore, the task model consists
25 * of the user sessions, the models of the identified tasks, as well as further
26 * information about the tasks (e.g. their occurrence count) for statistical
27 * processing.
28 * </p>
29 *
30 * @author 2012, Patrick Harms
31 */
32public interface ITaskModel extends Cloneable, Serializable {
33
34        /**
35         * <p>
36         * creates a deep clone of the model including all tasks and user sessions.
37         * </p>
38         *
39         * @return as described
40         */
41        public ITaskModel clone();
42
43        /**
44         * <p>
45         * returns a list of all metrics calculated by this model for the tasks and
46         * stored in the respective task infos
47         * </p>
48         *
49         * @return as described
50         */
51        public TaskMetric[] getAllMetrics();
52
53        /**
54         * <p>
55         * returns additional info for the provided task. The method returns null,
56         * if the provided task does not belong to the model.
57         * </p>
58         *
59         * @return as described
60         */
61        public ITaskInfo getTaskInfo(ITask task);
62
63        /**
64         * <p>
65         * returns the tasks belonging to the model. The return value must not be
66         * null. However, it may be an empty list, if the model is an empty model.
67         * </p>
68         *
69         * @return as described
70         */
71        public Collection<ITask> getTasks();
72
73        /**
74         * <p>
75         * returns the user sessions belonging to the model. The return value may be
76         * null in the case no user sessions are associated the the tasks in the
77         * model.
78         * </p>
79         *
80         * @return as described
81         */
82        public List<IUserSession> getUserSessions();
83
84}
Note: See TracBrowser for help on using the repository browser.