~ubuntu-branches/ubuntu/wily/me-tv/wily-proposed

« back to all changes in this revision

Viewing changes to src/meters_dialog.h

  • Committer: Bazaar Package Importer
  • Author(s): Michael Lamothe
  • Date: 2010-05-22 13:10:32 UTC
  • mfrom: (1.1.12 upstream) (3.1.11 sid)
  • Revision ID: james.westby@ubuntu.com-20100522131032-ibethpcgb8lpwt1w
Tags: 1.2.4-1
* New upstream release
* Maintainer change to Michael Lamothe
* Updated debian/control
  - Added libunique-dev to Build-Depends
  - Added libdbus-glib-1-dev to Build-Depends
* Added me-tv-player.1 to debian/me-tv.manpages

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * Copyright (C) 2010 Michael Lamothe
3
 
 *
4
 
 * This file is part of Me TV
5
 
 *
6
 
 * This program is free software; you can redistribute it and/or modify
7
 
 * it under the terms of the GNU General Public License as published by
8
 
 * the Free Software Foundation; either version 2 of the License, or
9
 
 * (at your option) any later version.
10
 
 * 
11
 
 * This program is distributed in the hope that it will be useful,
12
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 
 * GNU Library General Public License for more details.
15
 
 * 
16
 
 * You should have received a copy of the GNU General Public License
17
 
 * along with this program; if not, write to the Free Software
18
 
 * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301,  USA
19
 
 */
20
 
 
21
 
#ifndef __METERS_DIALOG_H__
22
 
#define __METERS_DIALOG_H__
23
 
 
24
 
#include <gtkmm.h>
25
 
#include "me-tv-ui.h"
26
 
#include "thread.h"
27
 
 
28
 
#define METERS_POLL_INTERVAL 100000
29
 
 
30
 
class MetersDialog : public Gtk::Dialog
31
 
{
32
 
private:
33
 
                
34
 
        class MetersThread : public Thread
35
 
        {
36
 
        private:
37
 
                MetersDialog& meters_dialog;
38
 
        public:
39
 
                MetersThread(MetersDialog& dialog) : Thread("Meters"), meters_dialog(dialog) {}
40
 
 
41
 
                void run()
42
 
                {
43
 
                        while (!is_terminated())
44
 
                        {
45
 
                                meters_dialog.update_meters();
46
 
                                usleep(METERS_POLL_INTERVAL);
47
 
                        }
48
 
                }
49
 
        };
50
 
 
51
 
        const Glib::RefPtr<Gtk::Builder>        builder;
52
 
        Gtk::ProgressBar*                                       progress_bar_signal_strength;
53
 
        Gtk::ProgressBar*                                       progress_bar_signal_noise;
54
 
        MetersThread                                            meters_thread;
55
 
        Dvb::Frontend&                                          frontend;
56
 
 
57
 
        void on_hide();
58
 
 
59
 
public: 
60
 
        MetersDialog(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Builder>& builder);
61
 
        ~MetersDialog();
62
 
 
63
 
        static MetersDialog& create(Glib::RefPtr<Gtk::Builder> builder);
64
 
                
65
 
        void start();
66
 
        void stop();
67
 
        void update_meters();
68
 
        void set_meters(gdouble strength, gdouble snr);
69
 
};
70
 
 
71
 
#endif