Ignore:
Timestamp:
08/07/11 18:43:13 (13 years ago)
Author:
tbretz
Message:
Changed Dim services to ensure they send the time.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/FACT++/src/DimDescriptionService.h

    r11246 r11837  
    22#define FACT_DimDescriptionService
    33
     4#include <array>
    45#include <string>
    56#include <vector>
    67
     8class Time;
    79class DimService;
    810
     
    4547    }
    4648
    47     template<class T>
    48     void Update(const T &data)
     49    void setData(const void *ptr, size_t sz)
    4950    {
    50         //cout << "Update: " << svc.getName() << " (" << sizeof(T) << ")" << endl;
    51         setData(const_cast<T*>(&data), sizeof(T));
    52         updateService();
     51        DimService::setData(const_cast<void*>(ptr), sz);
    5352    }
    5453
    5554    template<typename T>
    56     void Update(const std::vector<T> &data)
     55    void setData(const std::vector<T> &data)
    5756    {
    58         //std::cout << "Update: " << getName() << " " << data.size() << " " << sizeof(T) << std::endl;
    59         setData(const_cast<T*>(data.data()), data.size()*sizeof(T));
    60         updateService();
     57        setData(data.data(), data.size()*sizeof(T));
     58    }
     59
     60    template<class T, size_t N>
     61    void setData(const std::array<T, N> &data)
     62    {
     63        setData(data.data(), N*sizeof(T));
     64    }
     65
     66    void setTime(const Time &t);
     67    void setTime();
     68
     69    int Update();
     70    int Update(const Time &t);
     71    int Update(const std::string &data);
     72    int Update(const char *data);
     73
     74    template<class T>
     75    int Update(const T &data)
     76    {
     77        setData(&data, sizeof(T));
     78        return Update();
     79    }
     80
     81    template<typename T>
     82    int Update(const std::vector<T> &data)
     83    {
     84        setData(data);
     85        return Update();
     86    }
     87
     88    template<class T, size_t N>
     89    int Update(const std::array<T, N> &data)
     90    {
     91        setData(data);
     92        return Update();
    6193    }
    6294
    6395    // FIXME: Implement callback with boost::function instead of Pointer to this
    64 
    6596};
    6697
Note: See TracChangeset for help on using the changeset viewer.