OpenZWave Library  1.6.992
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  namespace Internal
36  {
37  namespace Platform
38  {
39  class TimeStampImpl;
40 
45  {
46  public:
51  TimeStamp();
52 
57  ~TimeStamp();
58 
64  void SetTime(int32 _milliseconds = 0);
65 
72  int32 TimeRemaining();
73 
78  string GetAsString();
79 
84  int32 operator-(TimeStamp const& _other);
85 
86  private:
87  TimeStamp(TimeStamp const&); // prevent copy
88  TimeStamp& operator =(TimeStamp const&); // prevent assignment
89 
90  TimeStampImpl* m_pImpl; // Pointer to an object that encapsulates the platform-specific implementation of the TimeStamp.
91  };
92  } // namespace Platform
93  } // namespace Internal
94 } // namespace OpenZWave
95 
96 #endif //_TimeStamp_H
97 
Definition: Bitfield.cpp:30
#define OPENZWAVE_EXPORT
Definition: Defs.h:52
signed int int32
Definition: Defs.h:90
Implements a platform-independent TimeStamp.
Definition: TimeStamp.h:44