[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-server-cvs
Subject:    [Server-cvs] engine/context/pub hxreg.h,1.4,1.5
From:       dcollins () helixcommunity ! org
Date:       2010-09-20 21:04:33
Message-ID: 201009202104.o8KL47tG020126 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/server/engine/context/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv26940/server/engine/context/pub

Modified Files:
	hxreg.h 
Log Message:
Synopsis
========
Implements Helix Server registry updates related to 64-bit Large File Support

Branches: SERVER_CURRENT_RN (HEAD)
Reviewers: Chytanya, server-dev


Description
===========

This implements INT64 support in the Helix Server registry.  64-bit
integers would be available in the registry on both 64-bit and 32-bit
platforms.

The COM APIs were extended a number of years ago in anticipation of
adding 64-bit integer support to the registry, so this check-in provides
the underlying implementation.   A small amount of refactoring of the
registry was necessary to accomplish this.

The constants INT64_MIN, INT64_MAX and UINT64_MAX are added to
common/include/hxmon.h (if not already defined) to support the
BoundedModifyInt64ByName() and BoundedModifyInt64ById() calls.

This does not change anywhere to use the new 64-bit registry
functionality.  Most registry usage will continue to use 32-bit integers
since they are often more than sufficient.  Data items will be migrated
to use the new 64-bit registry values as a seperate check-in.

This does not extend the IHXActiveRegistry-related interfaces to allow
for 64-bit integers.  This will be added as a seperate check-in.

These changes are implented so that the impact on non-64-bit builds,
and non-server builds, should be minimal, ideally transparent.


Files Affected
==============
common/include/hxmon.h
common/runtime/pub/hlxclib/limits.h
server/engine/context/hxreg.cpp
server/engine/context/pub/hxreg.h
server/engine/registry/servreg.cpp
server/engine/registry/pub/regprop.h
server/engine/registry/pub/servreg.h


Testing Performed
=================

Unit Tests:
- N/A

Integration Tests:
- N/A (not tested yet, will test when the first items are migrated to use 64-bits)

Leak Tests:
- N/A

Performance Tests:
- N/A

Platforms Tested: N/A
Build verified: linux-rhel5-x86_64, sunos-5.10-sparc64, win-x86_64-vc10


QA Hints
========
* N/A


Index: hxreg.h
===================================================================
RCS file: /cvsroot/server/engine/context/pub/hxreg.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- hxreg.h	3 May 2004 19:02:48 -0000	1.4
+++ hxreg.h	20 Sep 2010 21:04:31 -0000	1.5
@@ -789,8 +789,8 @@
                                         const char*     pName,
 					INT64           nDelta,
                                         REF(INT64)      nValue,
-					INT64           nMin=INT_MIN,
-					INT64           nMax=INT_MAX);
+					INT64           nMin=INT64_MIN,
+					INT64           nMax=INT64_MAX);
 
     /************************************************************************
      *  Method:
@@ -816,17 +816,13 @@
      *                  registry value = nMax
      *  nValue - OUT - parameter into which the value of the Property is
      *                 going to be returned, after modification
-     *
-     *  NOTE:
-     *     the default values should b changed from INT_MIN/MAX to their
-     *  appropriate 64-bit values
      */
     STDMETHOD(BoundedModifyInt64ById)   (THIS_
                                         const UINT32    id,
 					INT64           nDelta,
                                         REF(INT64)      nValue,
-					INT64           nMin=INT_MIN,
-					INT64           nMax=INT_MAX);
+					INT64           nMin=INT64_MIN,
+					INT64           nMax=INT64_MAX);
 
     /************************************************************************
      *  Method:


_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic