Changeset 1088 for trunk/yat/classifier


Ignore:
Timestamp:
Feb 14, 2008, 3:26:19 PM (16 years ago)
Author:
Peter
Message:

Closes #247. Removed IteratorWeighted? iterators over weighted container instead can use Iterator with a special Policy.

Location:
trunk/yat/classifier
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/yat/classifier/DataLookup2D.cc

    r1000 r1088  
    123123
    124124
     125  double DataLookup2D::data(size_t i, size_t j) const
     126  {
     127    return (*this)(i,j);
     128  }
     129
     130
    125131  size_t DataLookup2D::rows(void) const
    126132  {
    127133    return row_index_.size();
     134  }
     135
     136
     137  double DataLookup2D::weight(size_t i, size_t j) const
     138  {
     139    return 1.0;
    128140  }
    129141
  • trunk/yat/classifier/DataLookup2D.h

    r1000 r1088  
    110110    size_t columns(void) const;
    111111
     112   
     113    /**
     114       \return data
     115    */
     116    virtual double data(size_t i, size_t j) const;
     117   
    112118    ///
    113119    /// @return number of rows
     
    139145                    const std::vector<size_t>& val) const=0;
    140146
     147    /**
     148       \return data
     149    */
     150    virtual double weight(size_t i, size_t j) const;
     151   
    141152    ///
    142153    /// Is lookup weighted?
  • trunk/yat/classifier/DataLookupWeighted1D.cc

    r1000 r1088  
    6969  DataLookupWeighted1D::const_iterator DataLookupWeighted1D::begin(void) const
    7070  {
    71     return DataLookupWeighted1D::const_iterator(*this, 0);
     71    if (column_vector_)
     72      return const_iterator(const_iterator::iterator_type(*matrix_, 0, index_),
     73                            matrix_->columns());
     74    return const_iterator(const_iterator::iterator_type(*matrix_, index_, 0),1);
    7275  }
    7376
     
    8184  DataLookupWeighted1D::const_iterator DataLookupWeighted1D::end(void) const
    8285  {
    83     return DataLookupWeighted1D::const_iterator(*this, size());
     86    if (column_vector_)
     87      return const_iterator(const_iterator::iterator_type(*matrix_,
     88                                                          matrix_->rows(),
     89                                                          index_),
     90                            matrix_->columns());
     91    return const_iterator(const_iterator::iterator_type(*matrix_,index_+1,0),1);
    8492  }
    8593
  • trunk/yat/classifier/DataLookupWeighted1D.h

    r1000 r1088  
    2626*/
    2727
    28 #include "yat/utility/IteratorWeighted.h"
     28#include "DataLookup2D.h"
     29#include "yat/utility/Iterator.h"
     30#include "yat/utility/IteratorPolicy.h"
     31#include "yat/utility/StrideIterator.h"
    2932
    3033#include <iostream>
     34#include <utility>
    3135#include <vector>
    3236
     
    4650 
    4751  public:
    48    
    49     /// 'Read Only' Iterator
    50     typedef utility::IteratorWeighted<const double, const classifier::DataLookupWeighted1D>
     52    /// 'Read Only' iterator
     53    typedef utility::StrideIterator<
     54    utility::Iterator<const DataLookup2D, const std::pair<double, double>,
     55                      void, const std::pair<double, double>,
     56                      utility::IteratorPolicyWeighted<const DataLookup2D,
     57                                                      const double,
     58                                                      const double> > >
    5159    const_iterator;
    5260
  • trunk/yat/classifier/EnsembleBuilder.h

    r1087 r1088  
    2727*/
    2828
    29 #include "FeatureSelector.h";
     29#include "FeatureSelector.h"
    3030#include "Sampler.h"
    3131#include "SubsetGenerator.h"
Note: See TracChangeset for help on using the changeset viewer.