%%
%% This file is part of the ViTE project.
%%
%% This software is governed by the CeCILL-A license under French law
%% and abiding by the rules of distribution of free software. You can
%% use, modify and/or redistribute the software under the terms of the
%% CeCILL-A license as circulated by CEA, CNRS and INRIA at the following
%% URL: "http://www.cecill.info".
%% 
%% As a counterpart to the access to the source code and rights to copy,
%% modify and redistribute granted by the license, users are provided
%% only with a limited warranty and the software's author, the holder of
%% the economic rights, and the successive licensors have only limited
%% liability.
%% 
%% In this respect, the user's attention is drawn to the risks associated
%% with loading, using, modifying and/or developing or reproducing the
%% software by the user in light of its specific status of free software,
%% that may mean that it is complicated to manipulate, and that also
%% therefore means that it is reserved for developers and experienced
%% professionals having in-depth computer knowledge. Users are therefore
%% encouraged to load and test the software's suitability as regards
%% their requirements in conditions enabling the security of their
%% systems and/or data to be ensured and, more generally, to use and
%% operate it in the same conditions as regards security.
%% 
%% The fact that you are presently reading this means that you have had
%% knowledge of the CeCILL-A license and that you accept its terms.
%%
%%
%% ViTE developers are:
%%
%%        - COULOMB Kevin
%%        - FAVERGE Mathieu
%%        - JAZEIX Johnny
%%        - LAGRASSE Olivier
%%        - MARCOUEILLE Jule
%%        - NOISETTE Pascal
%%        - REDONDY Arthur
%%        - VUCHENER Clément 
%%

This section is for the maintenance of \textit{ViTE} and describes some features that could be added to it. They are not all described here and there is a better list in \url{http://gforge.inria.fr/pm/task.php?group_id=1596&group_project_id=3732}.

Of course, there could be some features not written here that could be implemented.
Moreover, some of these features are already in \textit{Paj\'e}.

\section{Using filters}

Unlike \textit{Paj\'e}, there is no filters in \textit{ViTE}.

We could add some like~:
\begin{itemize}
\item filtering on the printed data : in order to improve the legibility of the trace, we could hide some events, nodes, links ... printed in the trace.
\item filtering on the trace during parsing to do not keep some events too little or some entities (links for example) to improve the time spent to parse and show only what is useful.
\item filtering by container to only show the ones we want...
\end{itemize}

\section{Export in another file format}

\textit{ViTE} can export a trace in a svg format.\\
The advantage of this kind of format (vectorial) is that the quality of the trace is perfect because we can zoom in or out with the precision we want.\\
The problem is that the output file can be more than three times bigger than the original file (for an export of the whole trace).\\
So, it can be difficult to open it after. The export in a non-vectorial format can reduce the output size and make easier to open with only a slighty difference of quality.

\section{Allocation by lot}

For the moment all the different events are stored in memory one by one.

It could be very slow for very big traces. The idea, in order to do a new object for each event, is to do a tabular which could store a group of event.

The aim is to reduce the number of allocations which cost a lot.

\section{Reading at the flight}

For a better interactivity with \textit{ViTE}, you would like to be able to see the progress of a loading file or watch the about menu. For now, this is not possible because \textit{ViTE} is not multi-threaded and it parses the file and then shows it.

\section{Saves of configurations}

Maybe, for a trace that you will use a lot of time, you would like to always have the same filters or anything else preloaded without setting them when you load the trace. In order to do it, a configuration file by trace could be the solution and be loaded while the trace is loaded automatically.


\section{Interface enhancement}

The interface will have to have a menu built such as a tree, listing all the containers, and enabling by selecting one of them, to display only its children.

