X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/9701b7ab4dc4cd709ad4dcaa750fc0021f15e231..cd64751cac4c56591bee9b0a9c2a626ce40e67db:/include/stg/user_traff.h diff --git a/include/stg/user_traff.h b/include/stg/user_traff.h index fdefee0f..aee1171c 100644 --- a/include/stg/user_traff.h +++ b/include/stg/user_traff.h @@ -30,7 +30,7 @@ #include #include -#include "stg_const.h" +#include "const.h" #include "os_int.h" enum TRAFF_DIRECTION {TRAFF_UPLOAD, TRAFF_DOWNLOAD}; @@ -40,17 +40,20 @@ class DIR_TRAFF friend std::ostream & operator<< (std::ostream & o, const DIR_TRAFF & traff); public: + typedef std::vector ContainerType; + typedef ContainerType::size_type IndexType; + //------------------------------------------------------------------------- DIR_TRAFF(); DIR_TRAFF(const DIR_TRAFF & ts); DIR_TRAFF & operator=(const DIR_TRAFF & ts); ~DIR_TRAFF(); - uint64_t operator[](int idx) const; - uint64_t & operator[](int idx); + uint64_t operator[](IndexType idx) const; + uint64_t & operator[](IndexType idx); DIR_TRAFF operator+(const DIR_TRAFF & ts); private: - std::vector traff; + ContainerType traff; }; //----------------------------------------------------------------------------- @@ -73,31 +76,31 @@ inline DIR_TRAFF & DIR_TRAFF::operator=(const DIR_TRAFF & ts) { traff = ts.traff; return *this; -}; +} //----------------------------------------------------------------------------- -inline uint64_t & DIR_TRAFF::operator[](int idx) +inline uint64_t & DIR_TRAFF::operator[](IndexType idx) { return traff[idx]; -}; +} //----------------------------------------------------------------------------- -inline uint64_t DIR_TRAFF::operator[](int idx) const +inline uint64_t DIR_TRAFF::operator[](IndexType idx) const { return traff[idx]; -}; +} //----------------------------------------------------------------------------- inline DIR_TRAFF DIR_TRAFF::operator+(const DIR_TRAFF & ts) { -for (int i = 0; i < DIR_NUM; i++) +for (IndexType i = 0; i < DIR_NUM; i++) { traff[i] = traff[i] + ts.traff[i]; } return *this; -}; +} //----------------------------------------------------------------------------- inline std::ostream & operator<<(std::ostream & o, const DIR_TRAFF & traff) { bool first = true; -for (size_t i = 0; i < DIR_NUM; ++i) +for (DIR_TRAFF::IndexType i = 0; i < DIR_NUM; ++i) { if (first) first = false;