66 static void*
operator new(
size_t s);
68 static void operator delete(
void*
p);
89 void init(
int n,
double d);
134 int size(
void)
const;
199 template<
class Char,
class Traits>
200 std::basic_ostream<Char,Traits>&
201 operator <<(std::basic_ostream<Char,Traits>& os,
213 :
Advisor(home,p,c), _info(i << 1) {}
217 :
Advisor(home,share,a), _info(a._info) {
232 return (_info & 1) != 0;
252 for (
int i=x.
size();
i--; )
271 Activity::Storage::operator
new(
size_t s) {
275 Activity::Storage::operator
delete(
void*
p) {
280 : use_cnt(1),
a(
heap.alloc<double>(n0)),
n(n0),
d(d0) {
298 assert((i >= 0) && (i < storage->
n));
304 assert((i >= 0) && (i < storage->
n));
310 assert((i >= 0) && (i < storage->
n));
348 template<
class Char,
class Traits>
349 std::basic_ostream<Char,Traits>&
350 operator <<(std::basic_ostream<Char,Traits>& os,
352 std::basic_ostringstream<Char,Traits> s;
353 s.copyfmt(os); s.width(0);
361 return os << s.str();
375 c.update(home, share, p.
c);
392 x[as.advisor().idx()].cancel(home,as.advisor());
395 return sizeof(*this);
417 int i = as.advisor().idx();
418 if (as.advisor().marked()) {
419 as.advisor().unmark();
422 as.advisor().dispose(home,
c);