OpenZWave Library  1.6.0
TimeStamp.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------------
2 //
3 // TimeStamp.h
4 //
5 // Cross-platform TimeStamp
6 //
7 // Copyright (c) 2010 Mal Lansell <mal@lansell.org>
8 // All rights reserved.
9 //
10 // SOFTWARE NOTICE AND LICENSE
11 //
12 // This file is part of OpenZWave.
13 //
14 // OpenZWave is free software: you can redistribute it and/or modify
15 // it under the terms of the GNU Lesser General Public License as published
16 // by the Free Software Foundation, either version 3 of the License,
17 // or (at your option) any later version.
18 //
19 // OpenZWave is distributed in the hope that it will be useful,
20 // but WITHOUT ANY WARRANTY; without even the implied warranty of
21 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 // GNU Lesser General Public License for more details.
23 //
24 // You should have received a copy of the GNU Lesser General Public License
25 // along with OpenZWave. If not, see <http://www.gnu.org/licenses/>.
26 //
27 //-----------------------------------------------------------------------------
28 #ifndef _TimeStamp_H
29 #define _TimeStamp_H
30 
31 #include "Defs.h"
32 
33 namespace OpenZWave
34 {
35  class TimeStampImpl;
36 
41  {
42  public:
47  TimeStamp();
48 
53  ~TimeStamp();
54 
60  void SetTime( int32 _milliseconds = 0 );
61 
68  int32 TimeRemaining();
69 
74  string GetAsString();
75 
80  int32 operator- ( TimeStamp const& _other );
81 
82  private:
83  TimeStamp( TimeStamp const& ); // prevent copy
84  TimeStamp& operator = ( TimeStamp const& ); // prevent assignment
85 
86  TimeStampImpl* m_pImpl; // Pointer to an object that encapsulates the platform-specific implementation of the TimeStamp.
87  };
88 
89 } // namespace OpenZWave
90 
91 #endif //_TimeStamp_H
92 
Definition: Bitfield.h:34
#define OPENZWAVE_EXPORT
Definition: Defs.h:51
signed int int32
Definition: Defs.h:94
Implements a platform-independent TimeStamp.
Definition: TimeStamp.h:40