/elec/propeller-clock

To get this branch, use:
bzr branch http://bzr.ed.am/elec/propeller-clock

« back to all changes in this revision

Viewing changes to src/modes/mode.h

  • Committer: Tim Marston
  • Date: 2013-03-31 17:07:11 UTC
  • Revision ID: tim@ed.am-20130331170711-okfhn3wx9y0eo99a
updated the schematic to increase minimum font size
- new contact's phone numebrs and email addresses are added to the caches after those contacts are updated to account for the situation where the same contact is imported again from another file (or the contact exists twice in the same file!?)

Show diffs side-by-side

added added

removed removed

 
1
/*
 
2
 * mode.h
 
3
 *
 
4
 * Copyright (C) 2012 Tim Marston <tim@ed.am> and Dan Marston.
 
5
 *
 
6
 * This file is part of propeller-clock (hereafter referred to as "this
 
7
 * program"). See http://ed.am/dev/software/arduino/propeller-clock for more
 
8
 * information.
 
9
 *
 
10
 * This program is free software: you can redistribute it and/or modify
 
11
 * it under the terms of the GNU Lesser General Public License as published
 
12
 * by the Free Software Foundation, either version 3 of the License, or
 
13
 * (at your option) any later version.
 
14
 *
 
15
 * This program is distributed in the hope that it will be useful,
 
16
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
17
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
18
 * GNU Lesser General Public License for more details.
 
19
 *
 
20
 * You should have received a copy of the GNU Lesser General Public License
 
21
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
22
 */
 
23
#ifndef _MODE_H_
 
24
#define _MODE_H_
 
25
 
 
26
 
 
27
class Mode
 
28
{
 
29
public:
 
30
 
 
31
        /**
 
32
         * Called once per segment to draw a column of LEDs.
 
33
         *
 
34
         * @param segment the segment number to draw
 
35
         */
 
36
        virtual void draw( int segment );
 
37
 
 
38
        /**
 
39
         * Called at the start of a "frame", before any segments are drawn.
 
40
         */
 
41
        virtual void draw_reset();
 
42
 
 
43
        /**
 
44
         * Called when the mode is becoming active.
 
45
         */
 
46
        virtual void activate();
 
47
 
 
48
        /**
 
49
         * Called when the mode is becoming inactive.
 
50
         */
 
51
        virtual void deactivate();
 
52
 
 
53
        /**
 
54
         * Called when the button has been pressed.
 
55
         */
 
56
        virtual void press();
 
57
};
 
58
 
 
59
 
 
60
#endif //_MODE_H_