diff --git a/Builds/VisualStudio2012/beast.vcxproj b/Builds/VisualStudio2012/beast.vcxproj
index 137ce781..8309bb27 100644
--- a/Builds/VisualStudio2012/beast.vcxproj
+++ b/Builds/VisualStudio2012/beast.vcxproj
@@ -120,7 +120,7 @@
-
+
diff --git a/Builds/VisualStudio2012/beast.vcxproj.filters b/Builds/VisualStudio2012/beast.vcxproj.filters
index cc8c9fba..7b777f50 100644
--- a/Builds/VisualStudio2012/beast.vcxproj.filters
+++ b/Builds/VisualStudio2012/beast.vcxproj.filters
@@ -160,9 +160,6 @@
beast_core\containers
-
- beast_core\containers
-
beast_core\containers
@@ -623,6 +620,9 @@
beast_crypto
+
+ beast_core\containers
+
diff --git a/modules/beast_core/beast_core.h b/modules/beast_core/beast_core.h
index cb17e5b6..5235d8a5 100644
--- a/modules/beast_core/beast_core.h
+++ b/modules/beast_core/beast_core.h
@@ -239,7 +239,7 @@ namespace beast
#include "containers/beast_NamedValueSet.h"
#include "containers/beast_OwnedArray.h"
#include "containers/beast_PropertySet.h"
-#include "containers/beast_ReferenceCountedArray.h"
+#include "containers/beast_SharedObjectArray.h"
#include "containers/beast_ScopedValueSetter.h"
#include "containers/beast_SharedTable.h"
#include "containers/beast_SortedLookupTable.h"
diff --git a/modules/beast_core/containers/beast_Array.h b/modules/beast_core/containers/beast_Array.h
index c3f5a0c7..92c66f39 100644
--- a/modules/beast_core/containers/beast_Array.h
+++ b/modules/beast_core/containers/beast_Array.h
@@ -43,7 +43,7 @@
You can of course have an array of pointers to any kind of object, e.g. Array , but if
you do this, the array doesn't take any ownership of the objects - see the OwnedArray class or the
- ReferenceCountedArray class for more powerful ways of holding lists of objects.
+ SharedObjectArray class for more powerful ways of holding lists of objects.
For holding lists of strings, you can use Array\, but it's usually better to use the
specialised class StringArray, which provides more useful functions.
@@ -51,7 +51,7 @@
To make all the array's methods thread-safe, pass in "CriticalSection" as the templated
TypeOfCriticalSectionToUse parameter, instead of the default DummyCriticalSection.
- @see OwnedArray, ReferenceCountedArray, StringArray, CriticalSection
+ @see OwnedArray, SharedObjectArray, StringArray, CriticalSection
*/
template
class ArrayAllocationBase
diff --git a/modules/beast_core/containers/beast_OwnedArray.h b/modules/beast_core/containers/beast_OwnedArray.h
index 04a62fc0..697a6e3d 100644
--- a/modules/beast_core/containers/beast_OwnedArray.h
+++ b/modules/beast_core/containers/beast_OwnedArray.h
@@ -41,7 +41,7 @@
To make all the array's methods thread-safe, pass in "CriticalSection" as the templated
TypeOfCriticalSectionToUse parameter, instead of the default DummyCriticalSection.
- @see Array, ReferenceCountedArray, StringArray, CriticalSection
+ @see Array, SharedObjectArray, StringArray, CriticalSection
*/
template
diff --git a/modules/beast_core/containers/beast_ReferenceCountedArray.h b/modules/beast_core/containers/beast_SharedObjectArray.h
similarity index 96%
rename from modules/beast_core/containers/beast_ReferenceCountedArray.h
rename to modules/beast_core/containers/beast_SharedObjectArray.h
index fa57ac02..e140b476 100644
--- a/modules/beast_core/containers/beast_ReferenceCountedArray.h
+++ b/modules/beast_core/containers/beast_SharedObjectArray.h
@@ -34,7 +34,7 @@
/**
Holds a list of objects derived from SharedObject.
- A ReferenceCountedArray holds objects derived from SharedObject,
+ A SharedObjectArray holds objects derived from SharedObject,
and takes care of incrementing and decrementing their ref counts when they
are added and removed from the array.
@@ -44,7 +44,7 @@
@see Array, OwnedArray, StringArray
*/
template
-class ReferenceCountedArray
+class SharedObjectArray
{
public:
typedef SharedObjectPtr ObjectClassPtr;
@@ -53,13 +53,13 @@ public:
/** Creates an empty array.
@see SharedObject, Array, OwnedArray
*/
- ReferenceCountedArray() noexcept
+ SharedObjectArray() noexcept
: numUsed (0)
{
}
/** Creates a copy of another array */
- ReferenceCountedArray (const ReferenceCountedArray& other) noexcept
+ SharedObjectArray (const SharedObjectArray& other) noexcept
{
const ScopedLockType lock (other.getLock());
numUsed = other.size();
@@ -73,9 +73,9 @@ public:
/** Creates a copy of another array */
template
- ReferenceCountedArray (const ReferenceCountedArray& other) noexcept
+ SharedObjectArray (const SharedObjectArray& other) noexcept
{
- const typename ReferenceCountedArray::ScopedLockType lock (other.getLock());
+ const typename SharedObjectArray::ScopedLockType lock (other.getLock());
numUsed = other.size();
data.setAllocatedSize (numUsed);
memcpy (data.elements, other.getRawDataPointer(), numUsed * sizeof (ObjectClass*));
@@ -88,9 +88,9 @@ public:
/** Copies another array into this one.
Any existing objects in this array will first be released.
*/
- ReferenceCountedArray& operator= (const ReferenceCountedArray& other) noexcept
+ SharedObjectArray& operator= (const SharedObjectArray& other) noexcept
{
- ReferenceCountedArray otherCopy (other);
+ SharedObjectArray otherCopy (other);
swapWithArray (otherCopy);
return *this;
}
@@ -99,9 +99,9 @@ public:
Any existing objects in this array will first be released.
*/
template
- ReferenceCountedArray& operator= (const ReferenceCountedArray& other) noexcept
+ SharedObjectArray& operator= (const SharedObjectArray& other) noexcept
{
- ReferenceCountedArray otherCopy (other);
+ SharedObjectArray otherCopy (other);
swapWithArray (otherCopy);
return *this;
}
@@ -109,7 +109,7 @@ public:
/** Destructor.
Any objects in the array will be released, and may be deleted if not referenced from elsewhere.
*/
- ~ReferenceCountedArray()
+ ~SharedObjectArray()
{
clear();
}
@@ -409,7 +409,7 @@ public:
all available elements will be copied.
@see add
*/
- void addArray (const ReferenceCountedArray& arrayToAddFrom,
+ void addArray (const SharedObjectArray& arrayToAddFrom,
int startIndex = 0,
int numElementsToAdd = -1) noexcept
{
@@ -740,7 +740,7 @@ public:
If you need to exchange two arrays, this is vastly quicker than using copy-by-value
because it just swaps their internal pointers.
*/
- void swapWithArray (ReferenceCountedArray& otherArray) noexcept
+ void swapWithArray (SharedObjectArray& otherArray) noexcept
{
const ScopedLockType lock1 (getLock());
const ScopedLockType lock2 (otherArray.getLock());
@@ -754,7 +754,7 @@ public:
@returns true only if the other array contains the same objects in the same order
*/
- bool operator== (const ReferenceCountedArray& other) const noexcept
+ bool operator== (const SharedObjectArray& other) const noexcept
{
const ScopedLockType lock2 (other.getLock());
const ScopedLockType lock1 (getLock());
@@ -773,7 +773,7 @@ public:
@see operator==
*/
- bool operator!= (const ReferenceCountedArray& other) const noexcept
+ bool operator!= (const SharedObjectArray& other) const noexcept
{
return ! operator== (other);
}
diff --git a/modules/beast_core/containers/beast_SortedSet.h b/modules/beast_core/containers/beast_SortedSet.h
index 93b2725a..0af215ff 100644
--- a/modules/beast_core/containers/beast_SortedSet.h
+++ b/modules/beast_core/containers/beast_SortedSet.h
@@ -53,7 +53,7 @@
To make all the set's methods thread-safe, pass in "CriticalSection" as the templated
TypeOfCriticalSectionToUse parameter, instead of the default DummyCriticalSection.
- @see Array, OwnedArray, ReferenceCountedArray, StringArray, CriticalSection
+ @see Array, OwnedArray, SharedObjectArray, StringArray, CriticalSection
*/
template
class SortedSet
diff --git a/modules/beast_core/memory/beast_SharedObject.h b/modules/beast_core/memory/beast_SharedObject.h
index 53a4f2a8..e73a59be 100644
--- a/modules/beast_core/memory/beast_SharedObject.h
+++ b/modules/beast_core/memory/beast_SharedObject.h
@@ -57,7 +57,7 @@
the pointers can be passed between threads safely. For a faster but non-thread-safe
version, use SingleThreadedSharedObject instead.
- @see SharedObjectPtr, ReferenceCountedArray, SingleThreadedSharedObject
+ @see SharedObjectPtr, SharedObjectArray, SingleThreadedSharedObject
*/
class BEAST_API SharedObject : Uncopyable
{
@@ -126,7 +126,7 @@ private:
efficient).
For more details on how to use it, see the SharedObject class notes.
- @see SharedObject, SharedObjectPtr, ReferenceCountedArray
+ @see SharedObject, SharedObjectPtr, SharedObjectArray
*/
class BEAST_API SingleThreadedSharedObject : public Uncopyable
{
diff --git a/modules/beast_core/threads/beast_CriticalSection.h b/modules/beast_core/threads/beast_CriticalSection.h
index 7c8015e8..28e053c7 100644
--- a/modules/beast_core/threads/beast_CriticalSection.h
+++ b/modules/beast_core/threads/beast_CriticalSection.h
@@ -122,7 +122,7 @@ private:
This is currently used by some templated classes, and most compilers should
manage to optimise it out of existence.
- @see CriticalSection, Array, OwnedArray, ReferenceCountedArray
+ @see CriticalSection, Array, OwnedArray, SharedObjectArray
*/
class BEAST_API DummyCriticalSection : Uncopyable
{