23#include <osl/diagnose.h>
24#include <osl/mutex.hxx>
28class IPropertyArrayHelper;
75 ::osl::MutexGuard aGuard(s_aMutex);
81 ::osl::MutexGuard aGuard(s_aMutex);
82 OSL_ENSURE(s_nRefCount > 0,
"OPropertyArrayUsageHelper::~OPropertyArrayUsageHelper : "
83 "suspicious call : have a refcount of 0 !");
95 "OPropertyArrayUsageHelper::getArrayHelper : suspicious call : have a refcount of 0 !");
98 ::osl::MutexGuard aGuard(s_aMutex);
101 s_pProps = createArrayHelper();
102 OSL_ENSURE(s_pProps,
"OPropertyArrayUsageHelper::getArrayHelper : createArrayHelper "
103 "returned nonsense !");
111template <
class T>
void implCopySequence(
const T* _pSource, T*& _pDest, sal_Int32 _nSourceLen)
113 for (sal_Int32
i = 0;
i < _nSourceLen; ++
i, ++_pSource, ++_pDest)
121 const css::uno::Sequence<T>& _rRight)
123 sal_Int32 nLeft(_rLeft.getLength()), nRight(_rRight.getLength());
124 const T* pLeft = _rLeft.getConstArray();
125 const T* pRight = _rRight.getConstArray();
127 sal_Int32 nReturnLen(nLeft + nRight);
128 css::uno::Sequence<T> aReturn(nReturnLen);
129 T* pReturn = aReturn.getArray();
virtual ~OPropertyArrayUsageHelper()
OPropertyArrayUsageHelper()
static sal_Int32 s_nRefCount
::cppu::IPropertyArrayHelper * getArrayHelper()
call this in the getInfoHelper method of your derived class.
virtual ::cppu::IPropertyArrayHelper * createArrayHelper() const =0
used to implement the creation of the array helper which is shared amongst all instances of the class...
::cppu::IPropertyArrayHelper * s_pProps
void implCopySequence(const T *_pSource, T *&_pDest, sal_Int32 _nSourceLen)
void checkDisposed(bool _bThrow)
css::uno::Sequence< T > concatSequences(const css::uno::Sequence< T > &_rLeft, const css::uno::Sequence< T > &_rRight)
concat two sequences