Garfield++ v2r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
Heed::RegPassivePtr Class Reference

#include <AbsPtr.h>

+ Inheritance diagram for Heed::RegPassivePtr:

Public Member Functions

 RegPassivePtr (void)
 
 RegPassivePtr (char fs_ban_del, char fs_ban_sub, char fs_ban_cop=0)
 
 RegPassivePtr (const RegPassivePtr &f)
 
RegPassivePtroperator= (const RegPassivePtr &f)
 
CountPP_ns::CountPassivePtrbook (void) const
 
void clear_pointers (void) const
 
virtual RegPassivePtrcopy () const
 
virtual ~RegPassivePtr ()
 
virtual void print (std::ostream &file, int l=1) const
 
void set_s_ban_del (char fs_ban_del)
 
char get_s_ban_del (void) const
 
void set_s_ban_sub (char fs_ban_sub)
 
char get_s_ban_sub (void) const
 
void set_s_ban_cop (char fs_ban_cop)
 
char get_s_ban_cop (void) const
 
void set_s_allow_del_at_zero_count (char fs_allow_del_at_zero_count)
 
char get_s_allow_del_at_zero_count (void) const
 
long get_total_number_of_references (void) const
 

Static Public Member Functions

static void set_s_ban_del_ignore (char fs_ban_del_ignore)
 
static char get_s_ban_del_ignore (void)
 
static void set_s_print_adr_cpp (char fs_print_adr_cpp)
 
static char get_s_print_adr_cpp (void)
 

Friends

class CountPP_ns::CountPassivePtr
 
std::ostream & operator<< (std::ostream &file, const RegPassivePtr &f)
 

Detailed Description

Definition at line 559 of file AbsPtr.h.

Constructor & Destructor Documentation

◆ RegPassivePtr() [1/3]

Heed::RegPassivePtr::RegPassivePtr ( void  )
inline

Definition at line 651 of file AbsPtr.h.

652 :
653#ifdef USE_BIT_OPERA
654 control_word(0),
655#elif defined USE_BIT_FIELDS
656 conparam(),
657#else
658 s_ban_del(0),
659 s_ban_sub(0),
660 s_ban_cop(0),
661#ifdef USE_DELETE_AT_ZERO_COUNT
662 s_allow_del_at_zero_count(0),
663#endif
664#endif
665 cpp(NULL) {
666 }

Referenced by copy().

◆ RegPassivePtr() [2/3]

Heed::RegPassivePtr::RegPassivePtr ( char  fs_ban_del,
char  fs_ban_sub,
char  fs_ban_cop = 0 
)
inline

Definition at line 668 of file AbsPtr.h.

669 :
670#else
671 inline RegPassivePtr(int fs_ban_del, int fs_ban_sub, int fs_ban_cop = 0)
672 :
673#endif
674#ifdef USE_BIT_OPERA
675 control_word(0),
676#elif defined(USE_BIT_FIELDS)
677 conparam(fs_ban_del, fs_ban_sub, fs_ban_cop),
678#else
679 s_ban_del(fs_ban_del), s_ban_sub(fs_ban_sub), s_ban_cop(fs_ban_cop),
681 s_allow_del_at_zero_count(0),
682#endif
683#endif
684 cpp(NULL) {
685#ifdef USE_BIT_OPERA
686 set_s_ban_del(fs_ban_del);
687 set_s_ban_sub(fs_ban_sub);
688 set_s_ban_cop(fs_ban_cop);
689#endif
690 }
#define USE_DELETE_AT_ZERO_COUNT
Definition: AbsPtr.h:33
void set_s_ban_cop(char fs_ban_cop)
Definition: AbsPtr.h:978
void set_s_ban_sub(char fs_ban_sub)
Definition: AbsPtr.h:918
RegPassivePtr(void)
Definition: AbsPtr.h:651
void set_s_ban_del(char fs_ban_del)
Definition: AbsPtr.h:844

◆ RegPassivePtr() [3/3]

Heed::RegPassivePtr::RegPassivePtr ( const RegPassivePtr f)

Definition at line 16 of file AbsPtr.cpp.

17 :
18#ifdef USE_BIT_OPERA
19 control_word(f.control_word),
20#elif defined(USE_BIT_FIELDS)
21 conparam(f.conparam),
22#else
23 s_ban_del(f.s_ban_del),
24 s_ban_sub(f.s_ban_sub),
25 s_ban_cop(f.s_ban_cop),
26#ifdef USE_DELETE_AT_ZERO_COUNT
27 s_allow_del_at_zero_count(f.s_allow_del_at_zero_count),
28#endif
29#endif
30 cpp(NULL) {
31// mcout<<"RegPassivePtr::RegPassivePtr(...) is started\n";
32#ifdef USE_BIT_OPERA
33 if (f.get_s_ban_cop() == 2) {
34#elif defined(USE_BIT_FIELDS)
35 if (f.conparam.s_ban_cop == 2) {
36#else
37 if (f.s_ban_cop == 2) {
38#endif
39 mcerr << "Error in "
40 << "RegPassivePtr::RegPassivePtr(const RegPassivePtr& f):\n"
41 << "attempt to copy object whose s_ban_cop == 2.\n";
43 }
44#ifdef USE_BIT_OPERA
45 else if (f.get_s_ban_cop() == 1 && f.cpp->get_number_of_booked() > 0) {
46#elif defined(USE_BIT_FIELDS)
47 else if (f.conparam.s_ban_cop == 1 && f.cpp->get_number_of_booked() > 0) {
48#else
49 else if (f.s_ban_cop == 1 && f.cpp->get_number_of_booked() > 0) {
50#endif
51 mcerr << "Error in "
52 << "RegPassivePtr::RegPassivePtr(const RegPassivePtr& f):\n"
53 << "attempt to copy referred object whose s_ban_cop == 1.\n"
54 << "f.cpp->get_number_of_booked()=" << f.cpp->get_number_of_booked()
55 << '\n';
57 }
58}
#define spexit(stream)
Definition: FunNameStack.h:256
#define mcerr
Definition: prstream.h:128

◆ ~RegPassivePtr()

Heed::RegPassivePtr::~RegPassivePtr ( )
virtual

Definition at line 231 of file AbsPtr.cpp.

231 {
232 // mcout<<"~RegPassivePtr(): *this="<<(*this)<<'\n';
233 if (cpp != NULL) {
234 cpp->change_rpp(NULL);
235 if (cpp->get_number_of_booked() == 0) {
236 delete cpp;
237 cpp = NULL;
238 } else {
239#ifdef USE_BIT_OPERA
240 if (s_ban_del_ignore == 0 && get_s_ban_del() == 1)
241#elif defined(USE_BIT_FIELDS)
242 if (s_ban_del_ignore == 0 && conparam.s_ban_del == 1)
243#else
244 if (s_ban_del_ignore == 0 && s_ban_del == 1)
245#endif
246 {
247 mcerr << "Error in RegPassivePtr::~RegPassivePtr() "
248 << "s_ban_del == 1, but there are pointers to this class.\n";
249 mcerr << "cpp->number_of_registered=" << cpp->get_number_of_booked()
250 << '\n';
251 s_ban_del_ignore = 1;
252 spexit(mcerr);
253 }
254 }
255 }
256}
void change_rpp(const RegPassivePtr *frpp)
Definition: AbsPtr.h:516
char get_s_ban_del(void) const
Definition: AbsPtr.h:872

Member Function Documentation

◆ book()

CountPP_ns::CountPassivePtr * Heed::RegPassivePtr::book ( void  ) const
inline

Definition at line 699 of file AbsPtr.h.

699 {
700 if (!cpp) cpp = new CountPP_ns::CountPassivePtr(this);
701 cpp->book();
702 return cpp;
703 }
friend class CountPP_ns::CountPassivePtr
Definition: AbsPtr.h:561

Referenced by Heed::PassivePtr< X >::put().

◆ clear_pointers()

void Heed::RegPassivePtr::clear_pointers ( void  ) const
inline

Definition at line 705 of file AbsPtr.h.

705 {
706 // all pointers addressing this are cleared;
707 if (cpp) cpp->change_rpp(NULL);
708 }

Referenced by operator=().

◆ copy()

◆ get_s_allow_del_at_zero_count()

char Heed::RegPassivePtr::get_s_allow_del_at_zero_count ( void  ) const
inline

Definition at line 1068 of file AbsPtr.h.

1073 {
1074 if ((control_word & eb_s_allow_del_at_zero_count) != 0)
1075 return 1;
1076 else
1077 return 0;
1078 }
1079#elif defined(USE_BIT_FIELDS)
1080 {
1081 return conparam.s_allow_del_at_zero_count;
1082 }
1083#else
1084 { return s_allow_del_at_zero_count; }

Referenced by Heed::PassivePtr< X >::move_pointer(), operator=(), Heed::PassivePtr< X >::put(), and Heed::PassivePtr< X >::~PassivePtr().

◆ get_s_ban_cop()

char Heed::RegPassivePtr::get_s_ban_cop ( void  ) const
inline

Definition at line 1012 of file AbsPtr.h.

1017 {
1018 if ((control_word & eb_s_ban_cop2) == 0) {
1019 if ((control_word & eb_s_ban_cop1) == 0)
1020 return 0;
1021 else
1022 return 1;
1023 } else {
1024 return 2;
1025 }
1026 }
1027#elif defined USE_BIT_FIELDS
1028 {
1029 return conparam.s_ban_cop;
1030 }
1031#else
1032 { return s_ban_cop; }

Referenced by operator=(), and RegPassivePtr().

◆ get_s_ban_del()

char Heed::RegPassivePtr::get_s_ban_del ( void  ) const
inline

Definition at line 872 of file AbsPtr.h.

877 {
878 if ((control_word & eb_s_ban_del) != 0)
879 return 1;
880 else
881 return 0;
882 }
883#elif defined(USE_BIT_FIELDS)
884 {
885 return conparam.s_ban_del;
886 }
887#else
888 { return s_ban_del; }

Referenced by operator=(), and ~RegPassivePtr().

◆ get_s_ban_del_ignore()

static char Heed::RegPassivePtr::get_s_ban_del_ignore ( void  )
inlinestatic

Definition at line 909 of file AbsPtr.h.

913 {
914 return s_ban_del_ignore;
915 }

◆ get_s_ban_sub()

char Heed::RegPassivePtr::get_s_ban_sub ( void  ) const
inline

Definition at line 952 of file AbsPtr.h.

957 {
958 if ((control_word & eb_s_ban_sub2) == 0) {
959 if ((control_word & eb_s_ban_sub1) == 0)
960 return 0;
961 else
962 return 1;
963 } else {
964 // Iprintn(mcout, (control_word & eb_s_ban_sub1) );
965 // Iprintn(mcout, (control_word & eb_s_ban_sub2) );
966 return 2;
967 }
968 }
969#elif defined(USE_BIT_FIELDS)
970 {
971 return conparam.s_ban_sub;
972 }
973#else
974 { return s_ban_sub; }

Referenced by operator=().

◆ get_s_print_adr_cpp()

static char Heed::RegPassivePtr::get_s_print_adr_cpp ( void  )
inlinestatic

Definition at line 1107 of file AbsPtr.h.

1111 {
1112 return s_print_adr_cpp;
1113 }

◆ get_total_number_of_references()

long Heed::RegPassivePtr::get_total_number_of_references ( void  ) const

Definition at line 222 of file AbsPtr.cpp.

222 {
223 if (cpp == NULL)
224 return 0;
225 else
226 return cpp->get_number_of_booked();
227}

◆ operator=()

RegPassivePtr & Heed::RegPassivePtr::operator= ( const RegPassivePtr f)

Definition at line 60 of file AbsPtr.cpp.

60 {
61// mcout<<"RegPassivePtr::operator= is started\n";
62#ifdef USE_BIT_OPERA
63 if (f.get_s_ban_cop() == 2) {
64#elif defined(USE_BIT_FIELDS)
65 if (f.conparam.s_ban_cop == 2) {
66#else
67 if (f.s_ban_cop == 2) {
68#endif
69 mcerr << "Error in "
70 << "RegPassivePtr& RegPassivePtr::operator=(const RegPassivePtr& "
71 "f):\n"
72 << "attempt to copy object whose s_ban_cop == 2.\n";
74#ifdef USE_BIT_OPERA
75 } else if (f.get_s_ban_cop() == 1 && f.cpp->get_number_of_booked() > 0) {
76#elif defined(USE_BIT_FIELDS)
77 } else if (f.conparam.s_ban_cop == 1 && f.cpp->get_number_of_booked() > 0) {
78#else
79 } else if (f.s_ban_cop == 1 && f.cpp->get_number_of_booked() > 0) {
80#endif
81 mcerr << "Error in "
82 << "RegPassivePtr& RegPassivePtr::operator=(const "
83 "RegPassivePtr& f):\n"
84 << "attempt to copy referred object whose s_ban_cop == 1.\n"
85 << "f.cpp->get_number_of_booked()=" << f.cpp->get_number_of_booked()
86 << '\n';
88 }
89#ifdef USE_BIT_OPERA
90 set_s_ban_cop(f.get_s_ban_cop());
91#ifdef USE_DELETE_AT_ZERO_COUNT
92 set_s_allow_del_at_zero_count(f.get_s_allow_del_at_zero_count());
93#endif
94 set_s_ban_del(f.get_s_ban_del());
95 if (get_s_ban_sub() == 1)
96#elif defined(USE_BIT_FIELDS)
97 conparam.s_ban_cop = f.conparam.s_ban_cop;
98#ifdef USE_DELETE_AT_ZERO_COUNT
99 conparam.s_allow_del_at_zero_count = f.conparam.s_allow_del_at_zero_count;
100#endif
101 conparam.s_ban_del = f.conparam.s_ban_del;
102 if (conparam.s_ban_sub == 1)
103#else
104 s_ban_cop = f.s_ban_cop;
105#ifdef USE_DELETE_AT_ZERO_COUNT
106 s_allow_del_at_zero_count = f.s_allow_del_at_zero_count;
107#endif
108 s_ban_del = f.s_ban_del;
109 if (s_ban_sub == 1)
110#endif
111 {
112 if (this == &f && // self-assignment
113 cpp != NULL && cpp->get_number_of_booked() > 0) {
114 mcerr << "Error in "
115 << "RegPassivePtr& RegPassivePtr::operator=(const RegPassivePtr& "
116 "f):\n"
117 << "self-assignment, s_ban_sub == 1, but the object is addressed.\n"
118 << "This can lead to loss of pointers to copied object, not only "
119 "to this one.\n";
120 spexit(mcerr);
121 }
123 }
124#ifdef USE_BIT_OPERA
125 else if (get_s_ban_sub() == 2 && cpp != NULL &&
126 cpp->get_number_of_booked() > 0)
127#elif defined(USE_BIT_FIELDS)
128 else if (conparam.s_ban_sub == 2 && cpp != NULL &&
129 cpp->get_number_of_booked() > 0)
130#else
131 else if (s_ban_sub == 2 && cpp != NULL && cpp->get_number_of_booked() > 0)
132#endif
133 {
134 mcerr << "Error in "
135 << "RegPassivePtr& RegPassivePtr::operator=(const RegPassivePtr& "
136 "f):\n"
137 << "s_ban_sub == 2, but the object is addressed.\n";
138 spexit(mcerr);
139 }
140#ifdef USE_BIT_OPERA
141 set_s_ban_sub(f.get_s_ban_sub());
142#elif defined(USE_BIT_FIELDS)
143 conparam.s_ban_sub = f.conparam.s_ban_sub;
144#else
145 s_ban_sub = f.s_ban_sub;
146#endif
147 return *this;
148}
void clear_pointers(void) const
Definition: AbsPtr.h:705
void set_s_allow_del_at_zero_count(char fs_allow_del_at_zero_count)
Definition: AbsPtr.h:1038
char get_s_ban_sub(void) const
Definition: AbsPtr.h:952

◆ print()

◆ set_s_allow_del_at_zero_count()

void Heed::RegPassivePtr::set_s_allow_del_at_zero_count ( char  fs_allow_del_at_zero_count)
inline

Definition at line 1038 of file AbsPtr.h.

1042 {
1043#ifdef USE_BIT_OPERA
1044 if (fs_allow_del_at_zero_count == 0)
1045 clear_bit(control_word, eb_s_allow_del_at_zero_count);
1046 else if (fs_allow_del_at_zero_count == 1)
1047 rise_bit(control_word, eb_s_allow_del_at_zero_count);
1048#else
1049 if (fs_allow_del_at_zero_count == 0 || fs_allow_del_at_zero_count == 1) {
1050#ifdef USE_BIT_FIELDS
1051 conparam.s_allow_del_at_zero_count = fs_allow_del_at_zero_count;
1052#else
1053 s_allow_del_at_zero_count = fs_allow_del_at_zero_count;
1054#endif
1055 }
1056#endif
1057 else {
1058 mcerr << "ERROR in inline void set_s_allow_del_at_zero_count(int "
1059 "fs_allow_del_at_zero_count):\n";
1060 mcerr << "s_allow_del_at_zero_count is outside limits, "
1061 "s_allow_del_at_zero_count=" << int(fs_allow_del_at_zero_count)
1062 << '\n';
1063 spexit(mcerr);
1064 }
1065 }

Referenced by operator=().

◆ set_s_ban_cop()

void Heed::RegPassivePtr::set_s_ban_cop ( char  fs_ban_cop)
inline

Definition at line 978 of file AbsPtr.h.

982 {
983#ifdef USE_BIT_OPERA
984 if (fs_ban_cop == 0) {
985 clear_bit(control_word, eb_s_ban_cop1);
986 clear_bit(control_word, eb_s_ban_cop2);
987 } else if (fs_ban_cop == 1) {
988 rise_bit(control_word, eb_s_ban_cop1);
989 clear_bit(control_word, eb_s_ban_cop2);
990 } else if (fs_ban_cop == 2) {
991 clear_bit(control_word, eb_s_ban_cop1);
992 rise_bit(control_word, eb_s_ban_cop2);
993 }
994#else
995 if (fs_ban_cop >= 0 && fs_ban_cop <= 2) {
996#ifdef USE_BIT_FIELDS
997 conparam.s_ban_cop = fs_ban_cop;
998#else
999 s_ban_cop = fs_ban_cop;
1000#endif
1001 }
1002#endif
1003 else {
1004 mcerr << "ERROR in inline void set_s_ban_cop(int fs_ban_cop):\n";
1005 mcerr << "s_ban_cop is outside limits, s_ban_cop=" << int(fs_ban_cop)
1006 << '\n';
1007 spexit(mcerr);
1008 }
1009 }

Referenced by operator=(), and RegPassivePtr().

◆ set_s_ban_del()

void Heed::RegPassivePtr::set_s_ban_del ( char  fs_ban_del)
inline

Definition at line 844 of file AbsPtr.h.

848 {
849#ifdef USE_BIT_OPERA
850 if (fs_ban_del == 0)
851 clear_bit(control_word, eb_s_ban_del);
852 else if (fs_ban_del == 1)
853 rise_bit(control_word, eb_s_ban_del);
854#else
855 if (fs_ban_del == 0 || fs_ban_del == 1) {
856#ifdef USE_BIT_FIELDS
857 conparam.s_ban_del = fs_ban_del;
858#else
859 s_ban_del = fs_ban_del;
860#endif
861 }
862#endif
863 else {
864 mcerr << "ERROR in inline void set_s_ban_del(int fs_ban_del):\n";
865 mcerr << "s_ban_del is outside limits, s_ban_del=" << int(fs_ban_del)
866 << '\n';
867 spexit(mcerr);
868 }
869 }

Referenced by operator=(), and RegPassivePtr().

◆ set_s_ban_del_ignore()

static void Heed::RegPassivePtr::set_s_ban_del_ignore ( char  fs_ban_del_ignore)
inlinestatic

Definition at line 892 of file AbsPtr.h.

896 {
897 if (fs_ban_del_ignore == 0 || fs_ban_del_ignore == 1) {
898 s_ban_del_ignore = fs_ban_del_ignore;
899 } else {
900 mcerr << "ERROR in inline void set_s_ban_del_ignore(int "
901 "fs_ban_del_ignore ):\n";
902 mcerr << "s_ban_del_ignore is outside limits, s_ban_del_ignore="
903 << int(fs_ban_del_ignore) << '\n';
904 spexit(mcerr);
905 }
906 }

◆ set_s_ban_sub()

void Heed::RegPassivePtr::set_s_ban_sub ( char  fs_ban_sub)
inline

Definition at line 918 of file AbsPtr.h.

922 {
923#ifdef USE_BIT_OPERA
924 if (fs_ban_sub == 0) {
925 clear_bit(control_word, eb_s_ban_sub1);
926 clear_bit(control_word, eb_s_ban_sub2);
927 } else if (fs_ban_sub == 1) {
928 rise_bit(control_word, eb_s_ban_sub1);
929 clear_bit(control_word, eb_s_ban_sub2);
930 } else if (fs_ban_sub == 2) {
931 clear_bit(control_word, eb_s_ban_sub1);
932 rise_bit(control_word, eb_s_ban_sub2);
933 }
934#else
935 if (fs_ban_sub >= 0 && fs_ban_sub <= 2) {
936#ifdef USE_BIT_FIELDS
937 conparam.s_ban_sub = fs_ban_sub;
938#else
939 s_ban_sub = fs_ban_sub;
940#endif
941 }
942#endif
943 else {
944 mcerr << "ERROR in inline void set_s_ban_sub(int fs_ban_sub):\n";
945 mcerr << "s_ban_sub is outside limits, s_ban_sub=" << int(fs_ban_sub)
946 << '\n';
947 spexit(mcerr);
948 }
949 }

Referenced by operator=(), and RegPassivePtr().

◆ set_s_print_adr_cpp()

static void Heed::RegPassivePtr::set_s_print_adr_cpp ( char  fs_print_adr_cpp)
inlinestatic

Definition at line 1090 of file AbsPtr.h.

1094 {
1095 if (fs_print_adr_cpp == 0 || fs_print_adr_cpp == 1) {
1096 s_print_adr_cpp = fs_print_adr_cpp;
1097 } else {
1098 mcerr << "ERROR in inline void set_s_print_adr_cpp(int fs_print_adr_cpp "
1099 "):\n";
1100 mcerr << "s_print_adr_cpp is outside limits, s_print_adr_cpp="
1101 << int(fs_print_adr_cpp) << '\n';
1102 spexit(mcerr);
1103 }
1104 }

Friends And Related Function Documentation

◆ CountPP_ns::CountPassivePtr

friend class CountPP_ns::CountPassivePtr
friend

Definition at line 561 of file AbsPtr.h.

◆ operator<<

std::ostream & operator<< ( std::ostream &  file,
const RegPassivePtr f 
)
friend

Definition at line 156 of file AbsPtr.cpp.

156 {
157#ifdef USE_BIT_OPERA
158#ifdef USE_CHAR_GETSETTERS_PARAMETERS
159 Ifile << "RegPassivePtr<X>: s_ban_del/sub/cop=" << int(f.get_s_ban_del())
160 << "/" << int(f.get_s_ban_sub()) << "/" << int(f.get_s_ban_cop());
161#else
162 Ifile << "RegPassivePtr<X>: s_ban_del/sub/cop=" << f.get_s_ban_del() << "/"
163 << f.get_s_ban_sub() << "/" << f.get_s_ban_cop();
164#endif
165#elif defined USE_BIT_FIELDS
166 Ifile << "RegPassivePtr<X>: s_ban_del/sub/cop=" << f.conparam.s_ban_del << "/"
167 << f.conparam.s_ban_sub << "/" << f.conparam.s_ban_cop;
168#else
169#ifdef USE_CHAR_CONTROL_VARIABLES
170 Ifile << "RegPassivePtr<X>: s_ban_del/sub/cop=" << int(f.s_ban_del) << "/"
171 << int(f.s_ban_sub) << "/" << int(f.s_ban_cop);
172#else
173 Ifile << "RegPassivePtr<X>: s_ban_del/sub/cop=" << f.s_ban_del << "/"
174 << f.s_ban_sub << "/" << f.s_ban_cop;
175#endif
176#endif
177 /*
178 Ifile<<"RegPassivePtr<X>: s_ban_del="<<f.s_ban_del
179 <<" s_ban_sub="<<f.s_ban_sub
180 <<" s_ban_cop="<<f.s_ban_cop;
181 */
182 if (RegPassivePtr::s_print_adr_cpp == 0) {
183 if (f.cpp == NULL) {
184 file << " cpp=NULL\n";
185 } else {
186 file << " cpp!=NULL\n";
187 }
188 } else {
189 file << " cpp=" << f.cpp << '\n';
190 }
191 if (f.cpp != NULL) {
192 indn.n += 2;
193 Ifile << "cpp->number_of_registered=" << f.cpp->get_number_of_booked()
194 << '\n';
195 indn.n -= 2;
196 }
197#ifdef USE_DELETE_AT_ZERO_COUNT
198 indn.n += 2;
199#ifdef USE_BIT_OPERA
200 Ifile << "s_allow_del_at_zero_count="
201#ifdef USE_CHAR_GETSETTERS_PARAMETERS
202 << int(f.get_s_allow_del_at_zero_count()) << '\n';
203#else
204 << f.get_s_allow_del_at_zero_count() << '\n';
205#endif
206#elif defined(USE_BIT_FIELDS)
207 Ifile << "s_allow_del_at_zero_count=" << f.conparam.s_allow_del_at_zero_count
208 << '\n';
209#else
210#ifdef USE_CHAR_CONTROL_VARIABLES
211 Ifile << "s_allow_del_at_zero_count=" << int(f.s_allow_del_at_zero_count)
212 << '\n';
213#else
214 Ifile << "s_allow_del_at_zero_count=" << f.s_allow_del_at_zero_count << '\n';
215#endif
216#endif
217 indn.n -= 2;
218#endif
219 return file;
220}
indentation indn
Definition: prstream.cpp:15
#define Ifile
Definition: prstream.h:196

The documentation for this class was generated from the following files: