Move cds/intrusive/queue_stat.h to cds/intrusive/details directory
authorkhizmax <libcds.dev@gmail.com>
Sat, 27 Sep 2014 15:42:13 +0000 (19:42 +0400)
committerkhizmax <libcds.dev@gmail.com>
Sat, 27 Sep 2014 15:42:13 +0000 (19:42 +0400)
cds/container/moir_queue.h
cds/container/rwqueue.h
cds/intrusive/basket_queue.h
cds/intrusive/details/queue_stat.h [new file with mode: 0644]
cds/intrusive/msqueue.h
cds/intrusive/optimistic_queue.h
cds/intrusive/queue_stat.h [deleted file]
projects/Win/vc12/cds.vcxproj
projects/Win/vc12/cds.vcxproj.filters

index 072fe64c68210f59bbf57c542c64430eb863ecba..e0dd331329fd13bba7c7a442355d14c7a86f6667 100644 (file)
@@ -5,7 +5,7 @@
 
 #include <memory>
 #include <cds/intrusive/moir_queue.h>
-#include <cds/intrusive/queue_stat.h>
+#include <cds/intrusive/details/queue_stat.h>
 #include <cds/container/base.h>
 #include <cds/ref.h>
 #include <cds/details/trivial_assign.h>
index 0c061c16f9a1591f8aac3207d91b5dc1b745c356..4b687dc9fab0a7920717dadc5d906b5cf345606b 100644 (file)
@@ -6,7 +6,7 @@
 #include <memory>
 #include <cds/opt/options.h>
 #include <cds/lock/spinlock.h>
-#include <cds/intrusive/queue_stat.h>
+#include <cds/intrusive/details/queue_stat.h>
 #include <cds/details/allocator.h>
 #include <cds/details/trivial_assign.h>
 #include <cds/ref.h>
index 331127a029b7870e7c43e40d076eddaf5d0e7d79..c556e81637db1cfed8937536c9d2d06ce8e48a91 100644 (file)
@@ -6,7 +6,7 @@
 #include <type_traits>
 #include <cds/intrusive/details/base.h>
 #include <cds/details/marked_ptr.h>
-#include <cds/intrusive/queue_stat.h>
+#include <cds/intrusive/details/queue_stat.h>
 #include <cds/intrusive/details/single_link_struct.h>
 #include <cds/ref.h>
 #include <cds/intrusive/details/dummy_node_holder.h>
diff --git a/cds/intrusive/details/queue_stat.h b/cds/intrusive/details/queue_stat.h
new file mode 100644 (file)
index 0000000..0de7769
--- /dev/null
@@ -0,0 +1,93 @@
+//$$CDS-header$$
+
+#ifndef __CDS_INTRUSIVE_DETAILS_QUEUE_STAT_H
+#define __CDS_INTRUSIVE_DETAILS_QUEUE_STAT_H
+
+#include <cds/cxx11_atomic.h>
+
+namespace cds { namespace intrusive {
+
+    /// Queue internal statistics. May be used for debugging or profiling
+    /** @ingroup cds_intrusive_helper
+        Template argument \p Counter defines type of counter.
+        Default is cds::atomicity::event_counter, that is weak, i.e. it is not guaranteed
+        strict event counting.
+        You may use stronger type of counter like as cds::atomicity::item_counter,
+        or even integral type, for example, \p int.
+    */
+    template <typename Counter = cds::atomicity::event_counter >
+    struct queue_stat
+    {
+        typedef Counter     counter_type    ;   ///< Counter type
+
+        counter_type m_EnqueueCount      ;  ///< Enqueue call count
+        counter_type m_DequeueCount      ;  ///< Dequeue call count
+        counter_type m_EnqueueRace       ;  ///< Count of enqueue race conditions encountered
+        counter_type m_DequeueRace       ;  ///< Count of dequeue race conditions encountered
+        counter_type m_AdvanceTailError  ;  ///< Count of "advance tail failed" events
+        counter_type m_BadTail           ;  ///< Count of events "Tail is not pointed to the last item in the queue"
+
+        /// Register enqueue call
+        void onEnqueue()                { ++m_EnqueueCount; }
+        /// Register dequeue call
+        void onDequeue()                { ++m_DequeueCount; }
+        /// Register enqueue race event
+        void onEnqueueRace()            { ++m_EnqueueRace; }
+        /// Register dequeue race event
+        void onDequeueRace()            { ++m_DequeueRace; }
+        /// Register "advance tail failed" event
+        void onAdvanceTailFailed()      { ++m_AdvanceTailError; }
+        /// Register event "Tail is not pointed to last item in the queue"
+        void onBadTail()                { ++m_BadTail; }
+
+        //@cond
+        void reset()
+        {
+            m_EnqueueCount.reset();
+            m_DequeueCount.reset();
+            m_EnqueueRace.reset();
+            m_DequeueRace.reset();
+            m_AdvanceTailError.reset();
+            m_BadTail.reset();
+        }
+
+        queue_stat& operator +=( queue_stat const& s )
+        {
+            m_EnqueueCount += s.m_EnqueueCount.get();
+            m_DequeueCount += s.m_DequeueCount.get();
+            m_EnqueueRace += s.m_EnqueueRace.get();
+            m_DequeueRace += s.m_DequeueRace.get();
+            m_AdvanceTailError += s.m_AdvanceTailError.get();
+            m_BadTail += s.m_BadTail.get();
+
+            return *this;
+        }
+        //@endcond
+    };
+
+    /// Dummy queue statistics - no counting is performed. Support interface like \ref queue_stat
+    /** @ingroup cds_intrusive_helper
+    */
+    struct queue_dummy_stat
+    {
+        //@cond
+        void onEnqueue()                {}
+        void onDequeue()                {}
+        void onEnqueueRace()            {}
+        void onDequeueRace()            {}
+        void onAdvanceTailFailed()      {}
+        void onBadTail()                {}
+
+        void reset() {}
+        queue_dummy_stat& operator +=( queue_dummy_stat const& s )
+        {
+            return *this;
+        }
+        //@endcond
+    };
+
+
+}}  // namespace cds::intrusive
+
+
+#endif  // #ifndef __CDS_INTRUSIVE_DETAILS_QUEUE_STAT_H
index f81a1ad6bd8c96b917c0135506611a9beb1e2afa..76a0763d91e191b8f8422774b5fc19949837f6d2 100644 (file)
@@ -5,7 +5,7 @@
 
 #include <type_traits>
 #include <cds/intrusive/details/single_link_struct.h>
-#include <cds/intrusive/queue_stat.h>
+#include <cds/intrusive/details/queue_stat.h>
 #include <cds/intrusive/details/dummy_node_holder.h>
 
 namespace cds { namespace intrusive {
index d0d3cc9e89e3ad6766bf209db1d80839425292f5..d22c7a6a5dbe27513c25318f1c465b8fe4caa66c 100644 (file)
@@ -8,7 +8,7 @@
 #include <cds/cxx11_atomic.h>
 #include <cds/gc/default_gc.h>
 #include <cds/gc/hrc/gc_fwd.h>
-#include <cds/intrusive/queue_stat.h>
+#include <cds/intrusive/details/queue_stat.h>
 #include <cds/ref.h>
 
 namespace cds { namespace intrusive {
diff --git a/cds/intrusive/queue_stat.h b/cds/intrusive/queue_stat.h
deleted file mode 100644 (file)
index cd71314..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-//$$CDS-header$$
-
-#ifndef __CDS_INTRUSIVE_QUEUE_STAT_H
-#define __CDS_INTRUSIVE_QUEUE_STAT_H
-
-#include <cds/cxx11_atomic.h>
-
-namespace cds { namespace intrusive {
-
-    /// Queue internal statistics. May be used for debugging or profiling
-    /** @ingroup cds_intrusive_helper
-        Template argument \p Counter defines type of counter.
-        Default is cds::atomicity::event_counter, that is weak, i.e. it is not guaranteed
-        strict event counting.
-        You may use stronger type of counter like as cds::atomicity::item_counter,
-        or even integral type, for example, \p int.
-    */
-    template <typename Counter = cds::atomicity::event_counter >
-    struct queue_stat
-    {
-        typedef Counter     counter_type    ;   ///< Counter type
-
-        counter_type m_EnqueueCount      ;  ///< Enqueue call count
-        counter_type m_DequeueCount      ;  ///< Dequeue call count
-        counter_type m_EnqueueRace       ;  ///< Count of enqueue race conditions encountered
-        counter_type m_DequeueRace       ;  ///< Count of dequeue race conditions encountered
-        counter_type m_AdvanceTailError  ;  ///< Count of "advance tail failed" events
-        counter_type m_BadTail           ;  ///< Count of events "Tail is not pointed to the last item in the queue"
-
-        /// Register enqueue call
-        void onEnqueue()                { ++m_EnqueueCount; }
-        /// Register dequeue call
-        void onDequeue()                { ++m_DequeueCount; }
-        /// Register enqueue race event
-        void onEnqueueRace()            { ++m_EnqueueRace; }
-        /// Register dequeue race event
-        void onDequeueRace()            { ++m_DequeueRace; }
-        /// Register "advance tail failed" event
-        void onAdvanceTailFailed()      { ++m_AdvanceTailError; }
-        /// Register event "Tail is not pointed to last item in the queue"
-        void onBadTail()                { ++m_BadTail; }
-
-        //@cond
-        void reset()
-        {
-            m_EnqueueCount.reset();
-            m_DequeueCount.reset();
-            m_EnqueueRace.reset();
-            m_DequeueRace.reset();
-            m_AdvanceTailError.reset();
-            m_BadTail.reset();
-        }
-
-        queue_stat& operator +=( queue_stat const& s )
-        {
-            m_EnqueueCount += s.m_EnqueueCount.get();
-            m_DequeueCount += s.m_DequeueCount.get();
-            m_EnqueueRace += s.m_EnqueueRace.get();
-            m_DequeueRace += s.m_DequeueRace.get();
-            m_AdvanceTailError += s.m_AdvanceTailError.get();
-            m_BadTail += s.m_BadTail.get();
-
-            return *this;
-        }
-        //@endcond
-    };
-
-    /// Dummy queue statistics - no counting is performed. Support interface like \ref queue_stat
-    /** @ingroup cds_intrusive_helper
-    */
-    struct queue_dummy_stat
-    {
-        //@cond
-        void onEnqueue()                {}
-        void onDequeue()                {}
-        void onEnqueueRace()            {}
-        void onDequeueRace()            {}
-        void onAdvanceTailFailed()      {}
-        void onBadTail()                {}
-
-        void reset() {}
-        queue_dummy_stat& operator +=( queue_dummy_stat const& s )
-        {
-            return *this;
-        }
-        //@endcond
-    };
-
-
-}}  // namespace cds::intrusive
-
-
-#endif  // #ifndef __CDS_INTRUSIVE_QUEUE_STAT_H
index 207785a0bb7a77ebdce86896a166eec2bedf2821..6dbf8cbefaeb80e007c91ecae8aab72a233006ee 100644 (file)
     <ClInclude Include="..\..\..\cds\intrusive\details\michael_list_base.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\details\michael_set_base.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\details\node_traits.h" />\r
+    <ClInclude Include="..\..\..\cds\intrusive\details\queue_stat.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\details\single_link_struct.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\ellen_bintree_hp.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\ellen_bintree_ptb.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\moir_queue.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\msqueue.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\optimistic_queue.h" />\r
-    <ClInclude Include="..\..\..\cds\intrusive\queue_stat.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\segmented_queue.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\split_list.h" />\r
     <ClInclude Include="..\..\..\cds\intrusive\split_list_base.h" />\r
index 0a381360b167c28ea984539f1160ba1c2b55fdf0..1571176487a2b80c7639cfe3f9e1cd9bd045e47c 100644 (file)
     <ClInclude Include="..\..\..\cds\intrusive\optimistic_queue.h">\r
       <Filter>Header Files\cds\intrusive</Filter>\r
     </ClInclude>\r
-    <ClInclude Include="..\..\..\cds\intrusive\queue_stat.h">\r
-      <Filter>Header Files\cds\intrusive</Filter>\r
-    </ClInclude>\r
     <ClInclude Include="..\..\..\cds\intrusive\segmented_queue.h">\r
       <Filter>Header Files\cds\intrusive</Filter>\r
     </ClInclude>\r
     <ClInclude Include="..\..\..\cds\intrusive\details\node_traits.h">\r
       <Filter>Header Files\cds\intrusive\details</Filter>\r
     </ClInclude>\r
+    <ClInclude Include="..\..\..\cds\intrusive\details\queue_stat.h">\r
+      <Filter>Header Files\cds\intrusive\details</Filter>\r
+    </ClInclude>\r
   </ItemGroup>\r
 </Project>
\ No newline at end of file