Commit 25a36d8e authored by Mathieu Faverge's avatar Mathieu Faverge

Fix statistics

parent 33d0d3c3
......@@ -32,7 +32,7 @@ else()
endif()
if (NOT ${VITE_WC_DATE} STREQUAL "")
set (VITE_DATE "${VITE_WC_DATE}")
set (VITE_DATE "\"${VITE_WC_DATE}\"")
else()
if(UNIX)
set(_vite_SAVED_LC_ALL "$ENV{LC_ALL}")
......
This diff is collapsed.
......@@ -27,7 +27,7 @@ void Trace_infos::set_container_infos(QString &text) const {
/* count */
list <Container *> container_list;
_trace->get_all_containers(container_list);
text += "<h2>Containers:</h2>";
text += QString("count: %1").arg(container_list.size());
}
......@@ -48,7 +48,7 @@ void Trace_infos::set_states_infos(QString &text) const {
get_states_name_rec(states->get_root(), state_list);
}
}
text += "<h2>States:</h2>";
text += QString("count: %1").arg(state_list.size());
}
......@@ -77,7 +77,7 @@ void Trace_infos::set_events_infos(QString &text) const {
int count = 0;
list <Container *> container_list;
_trace->get_all_containers(container_list);
for(list<Container *>::const_iterator it = container_list.begin();
it != container_list.end();
++ it) {
......@@ -92,13 +92,13 @@ void Trace_infos::set_variables_infos(QString &text) const {
int count = 0;
list <Container *> container_list;
_trace->get_all_containers(container_list);
for(list<Container *>::const_iterator it = container_list.begin();
it != container_list.end();
++ it) {
count += (*it)->get_variable_number();
}
text += "<h2>Variables:</h2>";
text += "<h2>Variables:</h2>";
text += QString("count: %1").arg(count);
}
......
......@@ -105,7 +105,7 @@ void Node_select::set_initial_container_names(){
for (Container::VectorIt it = root_containers->begin();
it != root_containers->end();
it ++) {
string name = (*it)->get_name().to_string();
string name = (*it)->get_Name().to_string();
QStringList temp(QString::fromStdString(name));
QTreeWidgetItem *current_node = new QTreeWidgetItem((QTreeWidgetItem *)0, temp);
current_node->setData(0,Qt::UserRole,qVariantFromValue(*it));//store the pointer to the container in the Data field
......@@ -140,7 +140,7 @@ void Node_select::set_displayed_container_names(){
for (Container::VectorIt it = root_containers->begin();
it != root_containers->end();
it ++) {
string name = (*it)->get_name().to_string();
string name = (*it)->get_Name().to_string();
QStringList temp(QString::fromStdString(name));
QTreeWidgetItem *current_node = new QTreeWidgetItem((QTreeWidgetItem *)0, temp);
......@@ -175,7 +175,7 @@ void Node_select::set_container_names_rec(QTreeWidgetItem *current_node, Contain
it != children->end();
it ++) {
// We create the node and we do the recursivity
string name = (*it)->get_name().to_string();
string name = (*it)->get_Name().to_string();
QStringList temp(QString::fromStdString(name));
QTreeWidgetItem *node = new QTreeWidgetItem(current_node, temp);
......@@ -402,7 +402,7 @@ void Node_select::on_export_button_clicked(){
if((*it)->parent()==NULL){//we only want parent nodes
QDomElement rootElement = doc.createElement( "rootNode" );
rootElement.setAttribute( "name", QString((*it)->data(0,Qt::UserRole).value<Container*>()->get_name().to_string().c_str()) );
rootElement.setAttribute( "name", QString((*it)->data(0,Qt::UserRole).value<Container*>()->get_Name().to_string().c_str()) );
export_children_rec(*it, rootElement, doc);
root.appendChild( rootElement );
......@@ -442,7 +442,7 @@ void Node_select::export_children_rec(QTreeWidgetItem* item, QDomElement& parent
for(int i=0; i<item->childCount(); i++){
if((item->child(i)->checkState(0)& (Qt::Checked|Qt::PartiallyChecked)) ){
QDomElement element = doc.createElement( "Node" );
element.setAttribute( "name", QString(item->child(i)->data(0,Qt::UserRole).value<Container*>()->get_name().to_string().c_str()) );
element.setAttribute( "name", QString(item->child(i)->data(0,Qt::UserRole).value<Container*>()->get_Name().to_string().c_str()) );
parent.appendChild( element );
export_children_rec(item->child(i), element, doc);
......
......@@ -6,13 +6,13 @@
** 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,
......@@ -23,7 +23,7 @@
** 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.
**
......@@ -37,7 +37,7 @@
** - MARCOUEILLE Jule
** - NOISETTE Pascal
** - REDONDY Arthur
** - VUCHENER Clément
** - VUCHENER Clément
**
*/
/*!
......@@ -56,7 +56,7 @@
#include <QRadioButton>
#include <QProcess>
/* -- */
#include "common/common.hpp"
#include "common/common.hpp"
/* -- */
#include "interface/resource.hpp"
#include "interface/Interface.hpp"
......@@ -87,15 +87,15 @@ Command_window::Command_window( QWidget *parent, Interface_graphic * i) : QMainW
// CKFP(_ui_layout = this->findChild<QVBoxLayout *>("verticalLayout_5"),"Cannot find the vertical layout in the ui file");
_console = i;
CKFP(_ui_cmd_box = this->findChild<QLineEdit*>("command"), "Cannot find the command box in the .ui file");
CKFP(_ui_cmd_box = this->findChild<QLineEdit*>("command"), "Cannot find the command box in the .ui file");
CKFP(_ui_start_box = this->findChild<QLineEdit*>("startTime"), "Cannot find the beginning argument box in the .ui file");
CKFP(_ui_start_box = this->findChild<QLineEdit*>("startTime"), "Cannot find the beginning argument box in the .ui file");
CKFP(_ui_end_box = this->findChild<QLineEdit*>("endTime"), "Cannot find the end argument box in the .ui file");
CKFP(_ui_end_box = this->findChild<QLineEdit*>("endTime"), "Cannot find the end argument box in the .ui file");
CKFP(_ui_filter_box = this->findChild<QLineEdit*>("filter"), "Cannot find the filter argument box in the .ui file");
CKFP(_ui_filter_box = this->findChild<QLineEdit*>("filter"), "Cannot find the filter argument box in the .ui file");
CKFP(_ui_tree_box = this->findChild<QTreeWidget*>("_nodes_selected"), "Cannot find the tree argument box in the .ui file");
CKFP(_ui_tree_box = this->findChild<QTreeWidget*>("_nodes_selected"), "Cannot find the tree argument box in the .ui file");
}
void Command_window::set_trace( Trace * t){
......@@ -169,7 +169,7 @@ void Command_window::on_execute_button_clicked(){
void Command_window::set_container_names() {
const Container::Vector *root_containers = _trace->get_root_containers();
if(root_containers->empty()) {
......@@ -183,14 +183,14 @@ void Command_window::set_container_names() {
for (Container::VectorIt it = root_containers->begin();
it != root_containers->end();
it ++) {
string name = (*it)->get_name().to_string();
string name = (*it)->get_Name().to_string();
QStringList temp(QString::fromStdString(name));
QTreeWidgetItem *current_node = new QTreeWidgetItem((QTreeWidgetItem *)0, temp);
current_node->setFlags(flg);
current_node->setCheckState(0,Qt::Unchecked);
current_node->setFlags(flg);
current_node->setCheckState(0,Qt::Unchecked);
items.append(current_node);
// Recursivity to add the children names
set_container_names_rec(current_node, (*it));
}
......@@ -207,28 +207,28 @@ void Command_window::set_container_names_rec(QTreeWidgetItem *current_node, cons
it != children->end();
it ++) {
// We create the node and we do the recursivity
string name = (*it)->get_name().to_string();
string name = (*it)->get_Name().to_string();
QStringList temp(QString::fromStdString(name));
QTreeWidgetItem *node = new QTreeWidgetItem(current_node, temp);
node->setFlags(flg);
node->setCheckState(0,Qt::Unchecked);
node->setFlags(flg);
node->setCheckState(0,Qt::Unchecked);
set_container_names_rec(node ,(*it));
}
}
}
void Command_window::set_selected_nodes()
{
// We delete the previous selected containers
if(!_selected_containers.empty())
if(!_selected_containers.empty())
{
_selected_containers.clear();
}
// We fill the new selected containers
// TODO : Use the tree instead of the list
QTreeWidgetItemIterator it(_nodes_selected);
while (*it)
while (*it)
{
if ((*it)->checkState(0) == Qt::Checked)
{
......@@ -245,7 +245,7 @@ void Command_window::show_error(){
// return;
// case 0 :
// execvp("xpenguins",NULL);
// default :
// default :
// break;
// }
}
......
......@@ -6,13 +6,13 @@
** 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,
......@@ -23,7 +23,7 @@
** 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.
**
......@@ -37,7 +37,7 @@
** - MARCOUEILLE Jule
** - NOISETTE Pascal
** - REDONDY Arthur
** - VUCHENER Clément
** - VUCHENER Clément
**
*/
/*!
......@@ -86,7 +86,7 @@ public:
_start_y = 20.;
}
/*!
* \brief The destructor
*/
......@@ -106,7 +106,7 @@ public:
draw_object->clear();
this->_containers_to_print = containers_to_print;
nbcont = this->_containers_to_print.size();
draw_object->start_draw();
......@@ -126,7 +126,7 @@ public:
draw_object->set_total_height((_nb_variables_already_print-1)*this->_size_for_one_variable);
this->end_draw(draw_object);
this->end_draw(draw_object);
}
/*!
......@@ -137,28 +137,28 @@ public:
* \param var the variable printed
*/
void draw_diagram(T* draw_object, const int container_id, const Variable *var) {
int pos_x, pos_y;
int pos_x, pos_y;
std::string container_name;
double duration;
duration = this->_end_time - this->_start_time;
duration = this->_end_time - this->_start_time;
// Position for the origin of the graph
pos_x = _start_x;
pos_y = _start_y - this->_size_for_one_variable * _nb_variables_already_print;
pos_x = _start_x;
pos_y = _start_y - this->_size_for_one_variable * _nb_variables_already_print;
// Draw the container name
container_name = this->_containers_to_print[container_id]->get_name().to_string();
draw_object->draw_text(this->_pos_x_container_name,
// Draw the container name
container_name = this->_containers_to_print[container_id]->get_Name().to_string();
draw_object->draw_text(this->_pos_x_container_name,
this->_pos_y_container_name + 30 - pos_y,
container_name);
container_name);
// Draw the variable name
draw_object->draw_text(this->_pos_x_container_name,
draw_object->draw_text(this->_pos_x_container_name,
this->_pos_y_container_name + 50 - pos_y,
var->get_type()->get_name());
var->get_type()->get_name());
// Draw the axis
draw_object->draw_axis(pos_x,
draw_object->draw_axis(pos_x,
pos_y,
_x_axis_length,
_y_axis_length);
......@@ -214,7 +214,7 @@ public:
5);
}
// Draw the variable
// Draw the variable
// Formula : x = (time-begin)*(x_length)/duration + decalage
const std::list<std::pair<Date, Double> > *values = var->get_values();
double x = 0. ,
......@@ -230,7 +230,7 @@ public:
bool is_last_value = false; // If we get a time bigger than the end_time
if(max_value != min_value) {
for (std::list<std::pair<Date, Double> >::const_iterator it = values->begin();
for (std::list<std::pair<Date, Double> >::const_iterator it = values->begin();
it != values->end();
it ++) {
time = (*it).first.get_value();
......@@ -277,7 +277,7 @@ public:
_x_axis_length);
}
}
};
#endif
/*
** 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 (for version 0.* to 1.0):
**
** - COULOMB Kevin
** - FAVERGE Mathieu
** - JAZEIX Johnny
** - LAGRASSE Olivier
** - MARCOUEILLE Jule
** - NOISETTE Pascal
** - REDONDY Arthur
** - VUCHENER Clément
**
*/
** 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 (for version 0.* to 1.0):
**
** - COULOMB Kevin
** - FAVERGE Mathieu
** - JAZEIX Johnny
** - LAGRASSE Olivier
** - MARCOUEILLE Jule
** - NOISETTE Pascal
** - REDONDY Arthur
** - VUCHENER Clément
**
*/
/*!
*\file DrawHDiagram.hpp
*/
......@@ -54,14 +54,14 @@
template<class T>
class DrawHDiagram : public DrawStats<T> {
protected:
double _startx;
double _starty;
double _graph_width;
double _draw_width;
double _draw_height;
double _legend_width;
double _legend_height;
std::set<const EntityValue*> _setstates;
double _startx;
double _starty;
double _graph_width;
double _draw_width;
double _draw_height;
double _legend_width;
double _legend_height;
std::set<const EntityValue*> _setstates;
public:
/*
......@@ -110,9 +110,8 @@ public:
nbcont = this->_containers_to_print.size();
draw_object->start_draw();
draw_object->set_total_height((nbcont+1)*_WIDTH_HISTOGRAM_DEFAULT
+ 10.);
draw_object->set_total_width(draw_object->width());
draw_object->set_total_height( (nbcont+1) * _WIDTH_HISTOGRAM_DEFAULT + 10. );
draw_object->set_total_width( draw_object->width() );
draw_object->draw_axis(_startx,
_starty - (nbcont-1)*_WIDTH_HISTOGRAM_DEFAULT,
......@@ -120,11 +119,11 @@ public:
(nbcont+1)*_WIDTH_HISTOGRAM_DEFAULT);
draw_object->draw_horizontal_line(_startx,
_starty + _WIDTH_HISTOGRAM_DEFAULT,
_graph_width + 10.);
_starty + _WIDTH_HISTOGRAM_DEFAULT,
_graph_width + 10.);
for (int i=25; i < 101; i+=25)
{
{
// Draw Up Scale
draw_object->draw_vertical_line(_startx + i*_graph_width/100.,
_starty + _WIDTH_HISTOGRAM_DEFAULT - 2.5,
......@@ -139,7 +138,7 @@ public:
draw_object->draw_text(_startx + i*_graph_width/100 - 10.,
this->_size_for_one_container-(_starty - (nbcont-1)*_WIDTH_HISTOGRAM_DEFAULT - 15.),
QString::number(i, 'd', 1).toStdString()+"%");
}
}
for(int i = 0 ; i < nbcont ; i ++) {
draw_diagram(draw_object, i);
......@@ -176,7 +175,7 @@ public:
pos_y = _starty - container_id * _WIDTH_HISTOGRAM_DEFAULT;
// Draw the container name
ctname = this->_containers_to_print[container_id]->get_name().to_string();
ctname = this->_containers_to_print[container_id]->get_Name().to_string();
draw_object->draw_text(_POS_X_CONTAINER_NAME,
this->_size_for_one_container-(pos_y + _WIDTH_HISTOGRAM_DEFAULT / 2. - 5.),
ctname);
......@@ -185,7 +184,7 @@ public:
for (std::map<const EntityValue *, stats *>::iterator it = temp_states.begin();
it != temp_states.end();
it ++)
{
{
double length = (*it).second->_total_length;
double percent = length / duration ;
double width = percent * _graph_width;
......@@ -195,26 +194,26 @@ public:
// We search for a color
if((*it).first->get_extra_fields()->find(std::string("Color")) != (*it).first->get_extra_fields()->end())
{
{
const Color *color = (const Color *)(*it).first->get_extra_fields()->find(std::string("Color"))->second;
red = color->get_red();
green = color->get_green();
blue = color->get_blue();
}
}
draw_object->draw_rect(pos_x, pos_y,
width, _WIDTH_HISTOGRAM_DEFAULT,
red, green, blue);
if ( width > 30. )
draw_object->draw_text(pos_x + width / 2 - 10.,
this->_size_for_one_container-(pos_y + _WIDTH_HISTOGRAM_DEFAULT / 2. - 5.),
QString::number(percent*100., 'f', 1).toStdString()+"%");
draw_object->draw_text(pos_x + width / 2 - 10.,
this->_size_for_one_container-(pos_y + _WIDTH_HISTOGRAM_DEFAULT / 2. - 5.),
QString::number(percent*100., 'f', 1).toStdString()+"%");
pos_x += width;
this->_setstates.insert((*it).first);
}
}
delete stat_temp;
}
......@@ -246,14 +245,14 @@ public:
name.substr(0, 10));
if((*it)->get_extra_fields()->find(std::string("Color")) != (*it)->get_extra_fields()->end())
{
{
const Color *color = (const Color *)(*it)->get_extra_fields()->find(std::string("Color"))->second;
draw_object->draw_rect(pos_x, pos_y, w, h, color->get_red(), color->get_green(), color->get_blue());
}
}
else
{
{
draw_object->draw_rect(pos_x, pos_y, w, h, 0.7, 0.7, 0.75);
}
}
switch(decalage%3) {
case 2:
......
......@@ -110,7 +110,7 @@ public:
const Element_pos pos_x = this->_pos_x_container_name;
const Element_pos pos_y = this->_size_for_one_container*(container_id+1)-this->_pos_y_container_name;
const std::string name = this->_containers_to_print[container_id]->get_name().to_string();
const std::string name = this->_containers_to_print[container_id]->get_Name().to_string();
draw_object->draw_text(pos_x, pos_y, name);
......
......@@ -6,13 +6,13 @@
** 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,
......@@ -23,7 +23,7 @@
** 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.
**
......@@ -37,7 +37,7 @@
** - MARCOUEILLE Jule
** - NOISETTE Pascal
** - REDONDY Arthur
** - VUCHENER Clément
** - VUCHENER Clément
**
*/
......@@ -71,7 +71,7 @@ Statistic::~Statistic(){
}
}
void Statistic::add_state(EntityValue const* ent, double length){
void Statistic::add_state(EntityValue const* ent, double length) {
map<const EntityValue *, stats*>::iterator i = _states.find(ent);
// If it does not exist, add a new entry
if (i == _states.end()) {
......
/*
** 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 (for version 0.* to 1.0):
**
** - COULOMB Kevin
** - FAVERGE Mathieu
** - JAZEIX Johnny
** - LAGRASSE Olivier
** - MARCOUEILLE Jule
** - NOISETTE Pascal
** - REDONDY Arthur
** - VUCHENER Clément
**
*/
** 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 (for version 0.* to 1.0):
**
** - COULOMB Kevin
** - FAVERGE Mathieu
** - JAZEIX Johnny
** - LAGRASSE Olivier
** - MARCOUEILLE Jule
** - NOISETTE Pascal
** - REDONDY Arthur
** - VUCHENER Clément
**
*/
#ifndef STATISTIC_HPP
#define STATISTIC_HPP
......@@ -112,7 +112,7 @@ public :
*/
int get_nb_event() const;
/*!
/*!
* \fn get_states();
* \brief get the states
*/
......
This diff is collapsed.
......@@ -493,10 +493,24 @@ void Container::sub_variable(Date time, VariableType *type, Double value) {
#endif
}
Name Container::get_name() const {
Name
Container::get_Name() const
{
return _name;
}
std::string
Container::get_name() const
{
return _name.get_name();
}