This file is indexed.

/usr/include/openturns/TimeSeries.hxx is in libopenturns-dev 1.2-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
//                                               -*- C++ -*-
/**
 *  @file  TimeSeries.hxx
 *  @brief The class TimeSeries implements samples indexed by time
 *
 *  Copyright (C) 2005-2013 EDF-EADS-Phimeca
 *
 *  This library is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU Lesser General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This library is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU Lesser General Public License for more details.
 *
 *  You should have received a copy of the GNU Lesser General Public
 *  along with this library.  If not, see <http://www.gnu.org/licenses/>.
 *
 *  @author schueller
 *  @date   2012-07-16 15:59:45 +0200 (Mon, 16 Jul 2012)
 */
#ifndef OPENTURNS_TIMESERIES_HXX
#define OPENTURNS_TIMESERIES_HXX

#include <iostream>              // for std::ostream
#include "TimeSeriesImplementation.hxx"
#include "TypedInterfaceObject.hxx"

BEGIN_NAMESPACE_OPENTURNS



/**
 * @class TimeSeries
 */

class TimeSeries
  : public TypedInterfaceObject<TimeSeriesImplementation>
{
  CLASSNAME;

public:

  /* Some typedefs for easy reading */

public:

  /**
   * Default constructor
   * Build a TimeSeries of 1 dimension and with size equal to 0
   * and default time grid.
   */
  TimeSeries();

  /** Constructor with size and dimension */
  TimeSeries(const UnsignedLong size,
             const UnsignedLong dim);

  /** Constructor from a TimeGrid and a dimension */
  TimeSeries(const RegularGrid & tg,
             const UnsignedLong dim);
  /** Constructor from a TimeGrid and a sample */
  TimeSeries(const RegularGrid & tg,
             const NumericalSample & sample);

  /** Constructor from a NumericalPoint (all elements are equal to the NumericalPoint) */
  // TimeSeries(UnsignedLong size,
  //         const NumericalPoint & point);


  /** Constructor from implementation */
  TimeSeries(const TimeSeriesImplementation & implementation);

private:

  /** Constructor from implementation */
  TimeSeries(const Implementation & implementation);

public:

  /** Comparison operator */
  Bool operator ==(const TimeSeries & other) const;

#ifndef SWIG
  TSI_point operator [] (const UnsignedLong index);
  TSI_const_point operator [] (const UnsignedLong index) const;
  TSI_point at (const UnsignedLong index);
  TSI_const_point at (const UnsignedLong index) const;
  NumericalScalar & operator () (const UnsignedLong i,
                                 const UnsignedLong j);
  const NumericalScalar & operator () (const UnsignedLong i,
                                       const UnsignedLong j) const;
  NumericalScalar & at (const UnsignedLong i,
                        const UnsignedLong j);
  const NumericalScalar & at (const UnsignedLong i,
                              const UnsignedLong j) const;

  void erase(TimeSeriesImplementation::iterator first,
             TimeSeriesImplementation::iterator last);

  /** Accessor to values */
  TSI_point getValueAtIndex(const UnsignedLong index);
  TSI_const_point getValueAtIndex(const UnsignedLong index) const;
  void setValueAtIndex(const UnsignedLong index,
                       const NumericalPoint & val);

  TSI_point getValueAtNearestTime(const NumericalScalar timestamp);
  TSI_const_point getValueAtNearestTime(const NumericalScalar timestamp) const;
  void setValueAtNearestTime(const NumericalScalar timestamp,
                             const NumericalPoint & val);

#else
  /** Accessor to values */
  NumericalPoint getValueAtIndex(const UnsignedLong index);
  NumericalPoint getValueAtIndex(const UnsignedLong index) const;
  void setValueAtIndex(const UnsignedLong index,
                       const NumericalPoint & val);

  NumericalPoint getValueAtNearestTime(const NumericalScalar timestamp);
  NumericalPoint getValueAtNearestTime(const NumericalScalar timestamp) const;
  void setValueAtNearestTime(const NumericalScalar timestamp,
                             const NumericalPoint & val);

#endif

  RegularGrid getTimeGrid() const;

  /* Method __len__() is for Python */
  UnsignedLong __len__() const;

  /* Method __contains__() is for Python */
  Bool __contains__(const NumericalPoint & val) const;


  const NumericalPoint __getitem__ (const UnsignedLong index) const;
  void __setitem__ (const UnsignedLong index,
                    const NumericalPoint & val);

  void erase(const UnsignedLong first,
             const UnsignedLong last);
  void erase(const UnsignedLong index);

  /** erase the whole sample */
  void clear();

  /**
   * String converter
   * This method shows human readable information on the
   * internal state of an TimeSeries. It is used when streaming
   * the TimeSeries or for user information.
   */
  String __repr__() const;

  String __str__(const String & offset = "") const;

  /** Description accessor */
  void setDescription(const Description & description);
  Description getDescription() const;

  /** Dimension accessor */
  UnsignedLong getDimension() const;

  /** Size accessor */
  UnsignedLong getSize() const;

  /** Method add() appends an element to the collection */
  void add(const NumericalPoint & point);

  /** Method add() appends a sample to the collection */
  void add(const NumericalSample & sample);

  /** Append another time series to the collection. The time grids must match (one follows the other) */
  void add(const TimeSeries & continuer);

  /** Return the values stored in the time series as a sample */
  NumericalSample getSample() const;

  /** Compute the temporal mean of the time series */
  NumericalPoint getTemporalMean() const;

  /** Draw a marginal of the timeSerie */
  Graph drawMarginal(const UnsignedLong index = 0) const;

}; /* class TimeSeries */


END_NAMESPACE_OPENTURNS

#endif /* OPENTURNS_TIMESERIES_HXX */