-00150 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"SetCustomModeParam called"</span>);
-00151 <a class="code" href="classModeParameter.html">ModeParameter</a> M;
-00152 M.<a class="code" href="classModeParameter.html#o0">mode</a> = mode;
-00153 strlcpy(M.<a class="code" href="classModeParameter.html#o2">channel</a>,this->name,CHANMAX);
-00154 strlcpy(M.<a class="code" href="classModeParameter.html#o1">parameter</a>,parameter,MAXBUF);
-00155 <span class="keywordflow">if</span> (mode_on)
-00156 {
-00157 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s added"</span>,mode,parameter);
-00158 <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.push_back(M);
-00159 }
-00160 <span class="keywordflow">else</span>
-00161 {
-00162 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.size())
-00163 {
-00164 <span class="keywordflow">for</span> (vector<ModeParameter>::iterator i = <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.begin(); i < <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.end(); i++)
-00165 {
-00166 <span class="keywordflow">if</span> ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
-00167 {
-00168 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s removed"</span>,mode,parameter);
-00169 <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.erase(i);
-00170 <span class="keywordflow">return</span>;
-00171 }
-00172 }
-00173 }
-00174 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** BUG *** Attempt to remove non-existent mode parameter!"</span>);
-00175 }
-00176 }
-00177
-<a name="l00178"></a><a class="code" href="classchanrec.html#a2">00178</a> <span class="keywordtype">bool</span> <a class="code" href="classchanrec.html#a2">chanrec::IsCustomModeSet</a>(<span class="keywordtype">char</span> mode)
-00179 {
-00180 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Checking ISCustomModeSet: %c %s"</span>,mode,this->custom_modes);
-00181 <span class="keywordflow">return</span> (strchr(this->custom_modes,mode) != 0);
-00182 }
-00183
-<a name="l00184"></a><a class="code" href="classchanrec.html#a3">00184</a> std::string <a class="code" href="classchanrec.html#a3">chanrec::GetModeParameter</a>(<span class="keywordtype">char</span> mode)
-00185 {
-00186 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.size())
-00187 {
-00188 <span class="keywordflow">for</span> (vector<ModeParameter>::iterator i = <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.begin(); i < <a class="code" href="channels_8cpp.html#a37">custom_mode_params</a>.end(); i++)
-00189 {
-00190 <span class="keywordflow">if</span> ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
-00191 {
-00192 <span class="keywordflow">return</span> std::string(i->parameter);
-00193 }
-00194 }
-00195 }
-00196 <span class="keywordflow">return</span> std::string(<span class="stringliteral">""</span>);
-00197 }
-</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Mar 25 03:49:27 2005 for InspIRCd by
+<a name="l00150"></a><a class="code" href="classchanrec.html#a1">00150</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a1">chanrec::SetCustomModeParam</a>(<span class="keywordtype">char</span> mode,<span class="keywordtype">char</span>* parameter,<span class="keywordtype">bool</span> mode_on)
+00151 {
+00152
+00153 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"SetCustomModeParam called"</span>);
+00154 <a class="code" href="classModeParameter.html">ModeParameter</a> M;
+00155 M.<a class="code" href="classModeParameter.html#o0">mode</a> = mode;
+00156 strlcpy(M.<a class="code" href="classModeParameter.html#o2">channel</a>,this->name,CHANMAX);
+00157 strlcpy(M.<a class="code" href="classModeParameter.html#o1">parameter</a>,parameter,MAXBUF);
+00158 <span class="keywordflow">if</span> (mode_on)
+00159 {
+00160 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s added"</span>,mode,parameter);
+00161 <a class="code" href="channels_8cpp.html#a38">custom_mode_params</a>.push_back(M);
+00162 }
+00163 <span class="keywordflow">else</span>
+00164 {
+00165 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a38">custom_mode_params</a>.size())
+00166 {
+00167 <span class="keywordflow">for</span> (vector<ModeParameter>::iterator i = <a class="code" href="channels_8cpp.html#a38">custom_mode_params</a>.begin(); i < <a class="code" href="channels_8cpp.html#a38">custom_mode_params</a>.end(); i++)
+00168 {
+00169 <span class="keywordflow">if</span> ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
+00170 {
+00171 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Custom mode parameter %c %s removed"</span>,mode,parameter);
+00172 <a class="code" href="channels_8cpp.html#a38">custom_mode_params</a>.erase(i);
+00173 <span class="keywordflow">return</span>;
+00174 }
+00175 }
+00176 }
+00177 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"*** BUG *** Attempt to remove non-existent mode parameter!"</span>);
+00178 }
+00179 }
+00180
+<a name="l00181"></a><a class="code" href="classchanrec.html#a2">00181</a> <span class="keywordtype">bool</span> <a class="code" href="classchanrec.html#a2">chanrec::IsCustomModeSet</a>(<span class="keywordtype">char</span> mode)
+00182 {
+00183 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Checking ISCustomModeSet: %c %s"</span>,mode,this->custom_modes);
+00184 <span class="keywordflow">return</span> (strchr(this->custom_modes,mode) != 0);
+00185 }
+00186
+<a name="l00187"></a><a class="code" href="classchanrec.html#a3">00187</a> std::string <a class="code" href="classchanrec.html#a3">chanrec::GetModeParameter</a>(<span class="keywordtype">char</span> mode)
+00188 {
+00189 <span class="keywordflow">if</span> (<a class="code" href="channels_8cpp.html#a38">custom_mode_params</a>.size())
+00190 {
+00191 <span class="keywordflow">for</span> (vector<ModeParameter>::iterator i = <a class="code" href="channels_8cpp.html#a38">custom_mode_params</a>.begin(); i < <a class="code" href="channels_8cpp.html#a38">custom_mode_params</a>.end(); i++)
+00192 {
+00193 <span class="keywordflow">if</span> ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
+00194 {
+00195 <span class="keywordflow">return</span> std::string(i->parameter);
+00196 }
+00197 }
+00198 }
+00199 <span class="keywordflow">return</span> std::string(<span class="stringliteral">""</span>);
+00200 }
+00201
+<a name="l00202"></a><a class="code" href="classchanrec.html#a4">00202</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a4">chanrec::IncUserCounter</a>()
+00203 {
+00204 this-><a class="code" href="classchanrec.html#o2">users</a>++;
+00205 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Incremented channel user count for %s to %lu"</span>,<a class="code" href="classchanrec.html#o0">name</a>,(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>)<a class="code" href="classchanrec.html#o2">users</a>);
+00206 }
+00207
+<a name="l00208"></a><a class="code" href="classchanrec.html#a5">00208</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a5">chanrec::DecUserCounter</a>()
+00209 {
+00210 <span class="keywordflow">if</span> (this-><a class="code" href="classchanrec.html#o2">users</a> > 0)
+00211 this-><a class="code" href="classchanrec.html#o2">users</a>--;
+00212 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Decremented channel user count for %s to %lu"</span>,<a class="code" href="classchanrec.html#o0">name</a>,(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>)<a class="code" href="classchanrec.html#o2">users</a>);
+00213 }
+00214
+<a name="l00215"></a><a class="code" href="classchanrec.html#a6">00215</a> <span class="keywordtype">long</span> <a class="code" href="classchanrec.html#a6">chanrec::GetUserCounter</a>()
+00216 {
+00217 <span class="keywordflow">return</span> (this-><a class="code" href="classchanrec.html#o2">users</a>);
+00218 }
+00219
+<a name="l00220"></a><a class="code" href="classchanrec.html#a7">00220</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a7">chanrec::AddUser</a>(<span class="keywordtype">char</span>* castuser)
+00221 {
+00222 <a class="code" href="classchanrec.html#o3">internal_userlist</a>.push_back(castuser);
+00223 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Added casted user to channel's internal list"</span>);
+00224 }
+00225
+<a name="l00226"></a><a class="code" href="classchanrec.html#a8">00226</a> <span class="keywordtype">void</span> <a class="code" href="classchanrec.html#a8">chanrec::DelUser</a>(<span class="keywordtype">char</span>* castuser)
+00227 {
+00228 <span class="keywordflow">for</span> (std::vector<char*>::iterator a = <a class="code" href="classchanrec.html#o3">internal_userlist</a>.begin(); a < <a class="code" href="classchanrec.html#o3">internal_userlist</a>.end(); a++)
+00229 {
+00230 <span class="keywordflow">if</span> (*a == castuser)
+00231 {
+00232 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"Removed casted user from channel's internal list"</span>);
+00233 <a class="code" href="classchanrec.html#o3">internal_userlist</a>.erase(a);
+00234 <span class="keywordflow">return</span>;
+00235 }
+00236 }
+00237 log(<a class="code" href="modules_8h.html#a0">DEBUG</a>,<span class="stringliteral">"BUG BUG BUG! Attempt to remove an uncasted user from the internal list of %s!"</span>,<a class="code" href="classchanrec.html#o0">name</a>);
+00238 }
+00239
+<a name="l00240"></a><a class="code" href="classchanrec.html#a9">00240</a> std::vector<char*> *<a class="code" href="classchanrec.html#a9">chanrec::GetUsers</a>()
+00241 {
+00242 <span class="keywordflow">return</span> &<a class="code" href="classchanrec.html#o3">internal_userlist</a>;
+00243 }
+</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Apr 26 17:11:43 2005 for InspIRCd by