66 static void*
operator new(
size_t s);
68 static void operator delete(
void*
p);
89 void init(
int n,
double d);
137 int size(
void)
const;
202 template<
class Char,
class Traits>
203 std::basic_ostream<Char,Traits>&
204 operator <<(std::basic_ostream<Char,Traits>& os,
216 :
Advisor(home,p,c), _info(i << 1) {}
220 :
Advisor(home,share,a), _info(a._info) {
235 return (_info & 1) != 0;
255 for (
int i=x.
size();
i--; )
274 Activity::Storage::operator
new(
size_t s) {
278 Activity::Storage::operator
delete(
void*
p) {
283 : use_cnt(1),
a(
heap.alloc<double>(n0)),
n(n0),
d(d0) {
301 assert((i >= 0) && (i < storage->
n));
307 assert((i >= 0) && (i < storage->
n));
313 assert((i >= 0) && (i < storage->
n));
351 template<
class Char,
class Traits>
352 std::basic_ostream<Char,Traits>&
353 operator <<(std::basic_ostream<Char,Traits>& os,
355 std::basic_ostringstream<Char,Traits> s;
356 s.copyfmt(os); s.width(0);
364 return os << s.str();
378 c.update(home, share, p.
c);
395 x[as.advisor().idx()].cancel(home,as.advisor());
398 return sizeof(*this);
420 int i = as.advisor().idx();
421 if (as.advisor().marked()) {
422 as.advisor().unmark();
425 as.advisor().dispose(home,
c);