summaryrefslogtreecommitdiff
path: root/configmgr
diff options
context:
space:
mode:
authorIvo Hinkelmann <ihi@openoffice.org>2007-11-23 13:50:21 +0000
committerIvo Hinkelmann <ihi@openoffice.org>2007-11-23 13:50:21 +0000
commita1f6aa642f1403261242094b5c054bd58b31497d (patch)
treea9a50022b745dd8bbf96e0757a20523d27417575 /configmgr
parent248c1d29551177e17cb72660e7abfad65170646b (diff)
INTEGRATION: CWS configrefactor01 (1.6.84); FILE MERGED
2007/02/07 12:14:55 mmeeks 1.6.84.5: remove obsolete memory::Segment forward decls. 2007/01/16 12:18:28 mmeeks 1.6.84.4: Submitted by: mmeeks Kill 'memory::Segment' - no longer needed. Bin some other (empty / redundant) headers. 2007/01/11 20:16:06 mmeeks 1.6.84.3: Submitted by: mmeeks More re-factoring, lots of locking rationalized, drastically reduced the mutex count, also removed ~300k interlocked increments with a non-interlocking SimpleReferencedObject base 2007/01/11 10:35:41 mmeeks 1.6.84.2: Submitted by: mmeeks Large scale re-factoring, remove fine-grained locking in favor of a simple, single global lock (still in progress). Identify and fix various hot-spots. Remove otherwise empty / non-compiled files. Kill UpdateAccessor 2007/01/08 20:49:06 mmeeks 1.6.84.1: Issue number: Submitted by: mmeeks Substantial configmgr re-factoring #1 ... + remove endless typedef chains + remove custom allocator & associated complexity + remove Pointer, and 'Address' classes
Diffstat (limited to 'configmgr')
-rw-r--r--configmgr/source/treemgr/viewstrategy.hxx51
1 files changed, 8 insertions, 43 deletions
diff --git a/configmgr/source/treemgr/viewstrategy.hxx b/configmgr/source/treemgr/viewstrategy.hxx
index eeed8ca281c2..6f1dd74ad72b 100644
--- a/configmgr/source/treemgr/viewstrategy.hxx
+++ b/configmgr/source/treemgr/viewstrategy.hxx
@@ -4,9 +4,9 @@
*
* $RCSfile: viewstrategy.hxx,v $
*
- * $Revision: 1.6 $
+ * $Revision: 1.7 $
*
- * last change: $Author: rt $ $Date: 2005-09-08 04:37:43 $
+ * last change: $Author: ihi $ $Date: 2007-11-23 14:50:21 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -46,10 +46,10 @@
#ifndef CONFIGMGR_SETNODEBEHAVIOR_HXX_
#include "setnodeimpl.hxx"
#endif
-
-#ifndef _SALHELPER_SIMPLEREFERENCEOBJECT_HXX_
-#include <salhelper/simplereferenceobject.hxx>
+#ifndef CONFIGMGR_UTILITY_HXX_
+#include "utility.hxx"
#endif
+
#ifndef _RTL_REF_HXX_
#include <rtl/ref.hxx>
#endif
@@ -57,8 +57,6 @@
namespace configmgr
{
//-----------------------------------------------------------------------------
- namespace memory { class Segment; }
-//-----------------------------------------------------------------------------
namespace configuration
{
class SetElementChangeImpl;
@@ -77,7 +75,7 @@ namespace configmgr
typedef com::sun::star::uno::Any UnoAny;
typedef com::sun::star::uno::Type UnoType;
//-----------------------------------------------------------------------------
- class ViewStrategy : public salhelper::SimpleReferenceObject
+ class ViewStrategy : public configmgr::SimpleReferenceObject
{
// node attributes
public:
@@ -195,22 +193,10 @@ namespace configmgr
public:
NodeFactory& getNodeFactory();
- // direct update access to data
- public:
- void releaseDataSegment();
-
- memory::Segment const * getDataSegment() const;
- memory::Segment * getDataSegmentForUpdate();
-
- data::NodeAddress ::DataType * getDataForUpdate(data::NodeAccessRef const & _aNode);
- data::SetNodeAddress::DataType * getDataForUpdate(data::SetNodeAccess const & _aNode);
- data::GroupNodeAddress::DataType * getDataForUpdate(data::GroupNodeAccess const & _aNode);
- data::ValueNodeAddress::DataType * getDataForUpdate(data::ValueNodeAccess const & _aNode);
-
// access to node innards
protected:
/// provide access to the data of the underlying node
- data::NodeAccessRef getNodeAccessRef(Node const& _aNode) const;
+ data::NodeAccess getNodeAccess(Node const& _aNode) const;
/// provide access to the address of the underlying node
data::NodeAddress getNodeAddress(Node const& _aNode) const;
@@ -247,13 +233,6 @@ namespace configmgr
// virtual interface - these functions all have default implementations without support for pending changes
protected:
- virtual void doReleaseDataSegment() = 0;
-
- // special support for direct changes to underlying data - default is no support
- virtual data::NodeAddress::DataType * implAccessForUpdate(data::NodeAccessRef const & _aDataAccess);
- virtual memory::Segment const * doGetDataSegment() const = 0;
- virtual memory::Segment * doGetDataSegmentForUpdate();
-
// change handling
virtual void doCollectChanges(Node const& _aNode, NodeChanges& rChanges) const;
@@ -275,12 +254,7 @@ namespace configmgr
// set element access
virtual void doInsertElement(SetNode const& _aNode, Name const& aName, SetNodeEntry const& aNewEntry) = 0;
virtual void doRemoveElement(SetNode const& _aNode, Name const& aName) = 0;
-
- // strategy change support
-/* virtual void doCommitChanges(Node const& _aNode);
- virtual rtl::Reference<ViewStrategy> doCloneDirect() = 0;
- virtual rtl::Reference<ViewStrategy> doCloneIndirect() = 0;
-*/ };
+ };
//-----------------------------------------------------------------------------
inline Name ViewStrategy::getName(Node const& _aNode) const
@@ -295,15 +269,6 @@ namespace configmgr
inline NodeFactory& ViewStrategy::getNodeFactory()
{ return doGetNodeFactory(); }
- inline void ViewStrategy::releaseDataSegment()
- { doReleaseDataSegment(); }
-
- inline memory::Segment const * ViewStrategy::getDataSegment() const
- { return doGetDataSegment(); }
-
- inline memory::Segment * ViewStrategy::getDataSegmentForUpdate()
- { return doGetDataSegmentForUpdate(); }
-
//-----------------------------------------------------------------------------
}
//-----------------------------------------------------------------------------