Environment.h   Environment.h 
// //
// Environment.h // Environment.h
// //
// $Id: //poco/1.4/Foundation/include/Poco/Environment.h#2 $ // $Id: //poco/1.4/Foundation/include/Poco/Environment.h#3 $
// //
// Library: Foundation // Library: Foundation
// Package: Core // Package: Core
// Module: Environment // Module: Environment
// //
// Definition of the Environment class. // Definition of the Environment class.
// //
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH. // Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
// and Contributors. // and Contributors.
// //
skipping to change at line 80 skipping to change at line 80
static std::string osName(); static std::string osName();
/// Returns the operating system name. /// Returns the operating system name.
static std::string osDisplayName(); static std::string osDisplayName();
/// Returns the operating system name in a /// Returns the operating system name in a
/// "user-friendly" way. /// "user-friendly" way.
/// ///
/// Currently this is only implemented for /// Currently this is only implemented for
/// Windows. There it will return names like /// Windows. There it will return names like
/// "Windows XP" or "Windows 7/Server 2008 SP2". /// "Windows XP" or "Windows 7/Server 2008 SP2".
/// On other platform, returns the same as /// On other platforms, returns the same as
/// osName(). /// osName().
static std::string osVersion(); static std::string osVersion();
/// Returns the operating system version. /// Returns the operating system version.
static std::string osArchitecture(); static std::string osArchitecture();
/// Returns the operating system architecture. /// Returns the operating system architecture.
static std::string nodeName(); static std::string nodeName();
/// Returns the node (or host) name. /// Returns the node (or host) name.
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 ExpireStrategy.h   ExpireStrategy.h 
// //
// ExpireStrategy.h // ExpireStrategy.h
// //
// $Id: //poco/1.4/Foundation/include/Poco/ExpireStrategy.h#1 $ // $Id: //poco/1.4/Foundation/include/Poco/ExpireStrategy.h#2 $
// //
// Library: Foundation // Library: Foundation
// Package: Cache // Package: Cache
// Module: ExpireStrategy // Module: ExpireStrategy
// //
// Definition of the ExpireStrategy class. // Definition of the ExpireStrategy class.
// //
// Copyright (c) 2006, Applied Informatics Software Engineering GmbH. // Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
// and Contributors. // and Contributors.
// //
skipping to change at line 81 skipping to change at line 81
if (_expireTime < 25000) throw InvalidArgumentException("exp ireTime must be at least 25 ms"); if (_expireTime < 25000) throw InvalidArgumentException("exp ireTime must be at least 25 ms");
} }
~ExpireStrategy() ~ExpireStrategy()
{ {
} }
void onAdd(const void*, const KeyValueArgs <TKey, TValue>& args) void onAdd(const void*, const KeyValueArgs <TKey, TValue>& args)
{ {
Timestamp now; Timestamp now;
IndexIterator it = _keyIndex.insert(typename TimeIndex::valu typename TimeIndex::value_type tiValue(now, args.key());
e_type(now, args.key())); IndexIterator it = _keyIndex.insert(tiValue);
std::pair<Iterator, bool> stat = _keys.insert(typename Keys: typename Keys::value_type kValue(args.key(), it);
:value_type(args.key(), it)); std::pair<Iterator, bool> stat = _keys.insert(kValue);
if (!stat.second) if (!stat.second)
{ {
_keyIndex.erase(stat.first->second); _keyIndex.erase(stat.first->second);
stat.first->second = it; stat.first->second = it;
} }
} }
void onRemove(const void*, const TKey& key) void onRemove(const void*, const TKey& key)
{ {
Iterator it = _keys.find(key); Iterator it = _keys.find(key);
 End of changes. 2 change blocks. 
5 lines changed or deleted 5 lines changed or added


 FPEnvironment_DUMMY.h   FPEnvironment_DUMMY.h 
// //
// FPEnvironment_DUMMY.h // FPEnvironment_DUMMY.h
// //
// $Id: //poco/1.4/Foundation/include/Poco/FPEnvironment_DUMMY.h#1 $ // $Id: //poco/1.4/Foundation/include/Poco/FPEnvironment_DUMMY.h#3 $
// //
// Library: Foundation // Library: Foundation
// Package: Core // Package: Core
// Module: FPEnvironment // Module: FPEnvironment
// //
// Definition of class FPEnvironmentImpl for platforms that do not // Definition of class FPEnvironmentImpl for platforms that do not
// support IEEE 754 extensions. // support IEEE 754 extensions.
// //
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH. // Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
// and Contributors. // and Contributors.
skipping to change at line 43 skipping to change at line 43
// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABL E // SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABL E
// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWI SE, // FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWI SE,
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OT HER // ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OT HER
// DEALINGS IN THE SOFTWARE. // DEALINGS IN THE SOFTWARE.
// //
#ifndef Foundation_FPEnvironment_DUMMY_INCLUDED #ifndef Foundation_FPEnvironment_DUMMY_INCLUDED
#define Foundation_FPEnvironment_DUMMY_INCLUDED #define Foundation_FPEnvironment_DUMMY_INCLUDED
#include "Poco/Foundation.h" #include "Poco/Foundation.h"
#include <math.h> #include <cmath>
namespace Poco { namespace Poco {
class Foundation_API FPEnvironmentImpl class Foundation_API FPEnvironmentImpl
{ {
protected: protected:
enum RoundingModeImpl enum RoundingModeImpl
{ {
FP_ROUND_DOWNWARD_IMPL, FP_ROUND_DOWNWARD_IMPL,
FP_ROUND_UPWARD_IMPL, FP_ROUND_UPWARD_IMPL,
skipping to change at line 93 skipping to change at line 93
private: private:
static RoundingModeImpl _roundingMode; static RoundingModeImpl _roundingMode;
}; };
// //
// inlines // inlines
// //
inline bool FPEnvironmentImpl::isInfiniteImpl(float value) inline bool FPEnvironmentImpl::isInfiniteImpl(float value)
{ {
return isinf(value) != 0; return std::isinf(value) != 0;
} }
inline bool FPEnvironmentImpl::isInfiniteImpl(double value) inline bool FPEnvironmentImpl::isInfiniteImpl(double value)
{ {
return isinf(value) != 0; return std::isinf(value) != 0;
} }
inline bool FPEnvironmentImpl::isInfiniteImpl(long double value) inline bool FPEnvironmentImpl::isInfiniteImpl(long double value)
{ {
return isinf((double) value) != 0; return std::isinf((double) value) != 0;
} }
inline bool FPEnvironmentImpl::isNaNImpl(float value) inline bool FPEnvironmentImpl::isNaNImpl(float value)
{ {
return isnan(value) != 0; return std::isnan(value) != 0;
} }
inline bool FPEnvironmentImpl::isNaNImpl(double value) inline bool FPEnvironmentImpl::isNaNImpl(double value)
{ {
return isnan(value) != 0; return std::isnan(value) != 0;
} }
inline bool FPEnvironmentImpl::isNaNImpl(long double value) inline bool FPEnvironmentImpl::isNaNImpl(long double value)
{ {
return isnan((double) value) != 0; return std::isnan((double) value) != 0;
} }
inline float FPEnvironmentImpl::copySignImpl(float target, float source) inline float FPEnvironmentImpl::copySignImpl(float target, float source)
{ {
#if defined(__APPLE__) || defined(POCO_ANDROID)
return copysignf(target, source); return copysignf(target, source);
#else
return std::copysignf(target, source);
#endif
} }
inline double FPEnvironmentImpl::copySignImpl(double target, double source) inline double FPEnvironmentImpl::copySignImpl(double target, double source)
{ {
#if defined(__APPLE__) || defined(POCO_ANDROID)
return copysign(target, source); return copysign(target, source);
#else
return std::copysign(target, source);
#endif
} }
} // namespace Poco } // namespace Poco
#endif // Foundation_FPEnvironment_DUMMY_INCLUDED #endif // Foundation_FPEnvironment_DUMMY_INCLUDED
 End of changes. 12 change blocks. 
8 lines changed or deleted 16 lines changed or added


 HashMap.h   HashMap.h 
// //
// HashMap.h // HashMap.h
// //
// $Id: //poco/1.4/Foundation/include/Poco/HashMap.h#1 $ // $Id: //poco/1.4/Foundation/include/Poco/HashMap.h#2 $
// //
// Library: Foundation // Library: Foundation
// Package: Hashing // Package: Hashing
// Module: HashMap // Module: HashMap
// //
// Definition of the HashMap class. // Definition of the HashMap class.
// //
// Copyright (c) 2006, Applied Informatics Software Engineering GmbH. // Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
// and Contributors. // and Contributors.
// //
skipping to change at line 177 skipping to change at line 177
ValueType value(key); ValueType value(key);
return _table.find(value); return _table.find(value);
} }
Iterator find(const KeyType& key) Iterator find(const KeyType& key)
{ {
ValueType value(key); ValueType value(key);
return _table.find(value); return _table.find(value);
} }
std::size_t count(const KeyType& key) const
{
ValueType value(key);
return _table.find(value) != _table.end() ? 1 : 0;
}
std::pair<Iterator, bool> insert(const PairType& pair) std::pair<Iterator, bool> insert(const PairType& pair)
{ {
ValueType value(pair.first, pair.second); ValueType value(pair.first, pair.second);
return _table.insert(value); return _table.insert(value);
} }
std::pair<Iterator, bool> insert(const ValueType& value) std::pair<Iterator, bool> insert(const ValueType& value)
{ {
return _table.insert(value); return _table.insert(value);
} }
 End of changes. 2 change blocks. 
1 lines changed or deleted 7 lines changed or added


 MulticastSocket.h   MulticastSocket.h 
// //
// MulticastSocket.h // MulticastSocket.h
// //
// $Id: //poco/1.4/Net/include/Poco/Net/MulticastSocket.h#1 $ // $Id: //poco/1.4/Net/include/Poco/Net/MulticastSocket.h#2 $
// //
// Library: Net // Library: Net
// Package: Sockets // Package: Sockets
// Module: MulticastSocket // Module: MulticastSocket
// //
// Definition of the MulticastSocket class. // Definition of the MulticastSocket class.
// //
// Copyright (c) 2005-2006, Applied Informatics Software Engineering GmbH. // Copyright (c) 2005-2006, Applied Informatics Software Engineering GmbH.
// and Contributors. // and Contributors.
// //
skipping to change at line 58 skipping to change at line 58
class Net_API MulticastSocket: public DatagramSocket class Net_API MulticastSocket: public DatagramSocket
/// A MulticastSocket is a special DatagramSocket /// A MulticastSocket is a special DatagramSocket
/// that can be used to send packets to and receive /// that can be used to send packets to and receive
/// packets from multicast groups. /// packets from multicast groups.
{ {
public: public:
MulticastSocket(); MulticastSocket();
/// Creates the MulticastSocket. /// Creates the MulticastSocket.
explicit MulticastSocket(IPAddress::Family family); explicit MulticastSocket(IPAddress::Family family);
/// Creates an unconnected datagram socket. /// Creates an unconnected multicast socket.
/// ///
/// The socket will be created for the /// The socket will be created for the
/// given address family. /// given address family.
MulticastSocket(const SocketAddress& address, bool reuseAddress = fa lse); MulticastSocket(const SocketAddress& address, bool reuseAddress = fa lse);
/// Creates a datagram socket and binds it /// Creates a multicast socket and binds it
/// to the given address. /// to the given address.
/// ///
/// Depending on the address family, the socket /// Depending on the address family, the socket
/// will be either an IPv4 or an IPv6 socket. /// will be either an IPv4 or an IPv6 socket.
MulticastSocket(const Socket& socket); MulticastSocket(const Socket& socket);
/// Creates the DatagramSocket with the SocketImpl /// Creates the MulticastSocket with the SocketImpl
/// from another socket. The SocketImpl must be /// from another socket. The SocketImpl must be
/// a DatagramSocketImpl, otherwise an InvalidArgumentExcept ion /// a DatagramSocketImpl, otherwise an InvalidArgumentExcept ion
/// will be thrown. /// will be thrown.
~MulticastSocket(); ~MulticastSocket();
/// Destroys the DatagramSocket. /// Destroys the DatagramSocket.
MulticastSocket& operator = (const Socket& socket); MulticastSocket& operator = (const Socket& socket);
/// Assignment operator. /// Assignment operator.
/// ///
 End of changes. 4 change blocks. 
4 lines changed or deleted 4 lines changed or added


 Path_WIN32.h   Path_WIN32.h 
// //
// Path_WIN32.h // Path_WIN32.h
// //
// $Id: //poco/1.4/Foundation/include/Poco/Path_WIN32.h#1 $ // $Id: //poco/1.4/Foundation/include/Poco/Path_WIN32.h#2 $
// //
// Library: Foundation // Library: Foundation
// Package: Filesystem // Package: Filesystem
// Module: Path // Module: Path
// //
// Definition of the PathImpl class for WIN32. // Definition of the PathImpl class for WIN32.
// //
// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH. // Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
// and Contributors. // and Contributors.
// //
skipping to change at line 53 skipping to change at line 53
namespace Poco { namespace Poco {
class Foundation_API PathImpl class Foundation_API PathImpl
{ {
public: public:
static std::string currentImpl(); static std::string currentImpl();
static std::string homeImpl(); static std::string homeImpl();
static std::string tempImpl(); static std::string tempImpl();
static std::string nullImpl(); static std::string nullImpl();
static std::string systemImpl();
static std::string expandImpl(const std::string& path); static std::string expandImpl(const std::string& path);
static void listRootsImpl(std::vector<std::string>& roots); static void listRootsImpl(std::vector<std::string>& roots);
}; };
} // namespace Poco } // namespace Poco
#endif // Foundation_Path_WIN32_INCLUDED #endif // Foundation_Path_WIN32_INCLUDED
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 Path_WIN32U.h   Path_WIN32U.h 
// //
// Path_WIN32U.h // Path_WIN32U.h
// //
// $Id: //poco/1.4/Foundation/include/Poco/Path_WIN32U.h#1 $ // $Id: //poco/1.4/Foundation/include/Poco/Path_WIN32U.h#2 $
// //
// Library: Foundation // Library: Foundation
// Package: Filesystem // Package: Filesystem
// Module: Path // Module: Path
// //
// Definition of the PathImpl class for WIN32. // Definition of the PathImpl class for WIN32.
// //
// Copyright (c) 2006, Applied Informatics Software Engineering GmbH. // Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
// and Contributors. // and Contributors.
// //
skipping to change at line 53 skipping to change at line 53
namespace Poco { namespace Poco {
class Foundation_API PathImpl class Foundation_API PathImpl
{ {
public: public:
static std::string currentImpl(); static std::string currentImpl();
static std::string homeImpl(); static std::string homeImpl();
static std::string tempImpl(); static std::string tempImpl();
static std::string nullImpl(); static std::string nullImpl();
static std::string systemImpl();
static std::string expandImpl(const std::string& path); static std::string expandImpl(const std::string& path);
static void listRootsImpl(std::vector<std::string>& roots); static void listRootsImpl(std::vector<std::string>& roots);
enum enum
{ {
MAX_PATH_LEN = 32767 MAX_PATH_LEN = 32767
}; };
}; };
} // namespace Poco } // namespace Poco
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 Version.h   Version.h 
// //
// Version.h // Version.h
// //
// $Id: //poco/1.4/Foundation/include/Poco/Version.h#12 $ // $Id: //poco/1.4/Foundation/include/Poco/Version.h#13 $
// //
// Library: Foundation // Library: Foundation
// Package: Core // Package: Core
// Module: Version // Module: Version
// //
// Version information for the POCO C++ Libraries. // Version information for the POCO C++ Libraries.
// //
// Copyright (c) 2004-2012, Applied Informatics Software Engineering GmbH. // Copyright (c) 2004-2012, Applied Informatics Software Engineering GmbH.
// and Contributors. // and Contributors.
// //
skipping to change at line 55 skipping to change at line 55
// - AA is the major version number, // - AA is the major version number,
// - BB is the minor version number, // - BB is the minor version number,
// - CC is the revision number, and // - CC is the revision number, and
// - DD is the patch level number. // - DD is the patch level number.
// Note that some patch level numbers have // Note that some patch level numbers have
// a special meaning: // a special meaning:
// Dx are development releases // Dx are development releases
// Ax are alpha releases // Ax are alpha releases
// Bx are beta releases // Bx are beta releases
// //
#define POCO_VERSION 0x01040500 #define POCO_VERSION 0x01040600
#endif // Foundation_Version_INCLUDED #endif // Foundation_Version_INCLUDED
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/