diff options
author | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2013-10-17 20:12:37 +0200 |
---|---|---|
committer | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2013-10-30 21:20:45 +0100 |
commit | b78adcdd11ef0414c2594bada2a37d498d32f1ef (patch) | |
tree | cd0bff850d78d4b4f9c53fee407ac202c6feb854 /src/poll_controller.h | |
parent | 9b30c7f46e2c55aed06cea8d1daa9093f331fb20 (diff) |
bts: Introduce a PollController that has the responsibility to poll
For each frame indication received by the BTS the poll controller
is asked to expire timedout entries.
Diffstat (limited to 'src/poll_controller.h')
-rw-r--r-- | src/poll_controller.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/poll_controller.h b/src/poll_controller.h new file mode 100644 index 00000000..67af4084 --- /dev/null +++ b/src/poll_controller.h @@ -0,0 +1,46 @@ +/* poll_controller.h + * + * Copyright (C) 2013 by Holger Hans Peter Freyther + * + * All Rights Reserved + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program 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 General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + */ + +#pragma once + +struct gprs_rlcmac_bts; + +class BTS; + +/** + * I belong to a BTS and I am responsible for finding TBFs and + * SBAs that should have been polled and execute the timeout + * action on them. + */ +class PollController { +public: + PollController(BTS& bts); + + void expireTimedout(int frame_number); + +private: + BTS& m_bts; + +private: + /* disable copying to avoid slicing */ + PollController(const PollController&); + PollController& operator=(const PollController&); +}; |