source: pacpusframework/trunk/3rd/apache-log4cxx/include/log4cxx/helpers/timezone.h@ 3

Last change on this file since 3 was 2, checked in by sgosseli, 12 years ago

Add 3rd party libraries (log4cxx).

File size: 2.0 KB
Line 
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#ifndef _LOG4CXX_HELPERS_TIMEZONE_H
19#define _LOG4CXX_HELPERS_TIMEZONE_H
20
21#include <log4cxx/logstring.h>
22#include <log4cxx/helpers/objectimpl.h>
23#include <log4cxx/helpers/objectptr.h>
24
25struct apr_time_exp_t;
26
27namespace log4cxx
28{
29 namespace helpers
30 {
31 class TimeZone;
32 LOG4CXX_PTR_DEF(TimeZone);
33
34 class LOG4CXX_EXPORT TimeZone : public helpers::ObjectImpl
35 {
36 public:
37 DECLARE_ABSTRACT_LOG4CXX_OBJECT(TimeZone)
38 BEGIN_LOG4CXX_CAST_MAP()
39 LOG4CXX_CAST_ENTRY(TimeZone)
40 END_LOG4CXX_CAST_MAP()
41
42 static const TimeZonePtr& getDefault();
43 static const TimeZonePtr& getGMT();
44 static const TimeZonePtr getTimeZone(const LogString& ID);
45
46 const LogString getID() const {
47 return id;
48 }
49
50
51 /**
52 * Expand an APR time into the human readable
53 * components for this timezone.
54 */
55 virtual log4cxx_status_t explode(apr_time_exp_t* result,
56 log4cxx_time_t input) const = 0;
57
58
59 protected:
60 TimeZone(const LogString& ID);
61 virtual ~TimeZone();
62
63 const LogString id;
64 };
65
66
67 }
68}
69
70#endif //_LOG4CXX_HELPERS_TIMEZONE_H
Note: See TracBrowser for help on using the repository browser.