source: git/Singular/ReferenceCounter.cc @ 2b78bd

spielwiese
Last change on this file since 2b78bd was 2b78bd, checked in by Frank Seelisch <seelisch@…>, 14 years ago
test code for Minors and C++Wrappers (with defines HAVE_MINOR and HAVE_WRAPPERS) git-svn-id: file:///usr/local/Singular/svn/trunk@12151 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 964 bytes
Line 
1#include "mod2.h"
2
3#ifdef HAVE_WRAPPERS
4
5#include "ReferenceCounter.h"
6#include "Wrappers.h"
7#include <iostream>
8
9refcount_type ReferenceCounter::decrement ()
10{
11  assume(m_counter > 0); // Ensure positivity of counter
12  +prpr > "ReferenceCounter decremented to " < m_counter - 1;
13  return --m_counter;
14};
15
16refcount_type ReferenceCounter::increment ()
17{
18  +prpr > "ReferenceCounter incremented to " < m_counter + 1;
19  return ++m_counter;
20}
21
22ReferenceCounter::ReferenceCounter (): m_counter(0)
23{
24  +prpr > "ReferenceCounter default constructor; counter initialized with 0";
25}
26
27ReferenceCounter::ReferenceCounter (const ReferenceCounter& rc)
28{
29  assume(false); /* copy constructor should never be called */
30}
31
32ReferenceCounter::~ReferenceCounter ()
33{
34  +prpr > "ReferenceCounter destructor";
35}
36
37refcount_type ReferenceCounter::getCounter () const
38{
39  return m_counter;
40}
41
42bool ReferenceCounter::isShared () const
43{
44  return (m_counter > 1);
45}
46
47#endif // HAVE_WRAPPERS
Note: See TracBrowser for help on using the repository browser.