bool SDES_chunk::add_item(const SDES_item& item) { const uint SDES_ARRAY_INCREMENT = 10; if (num_sdes_items > max_sdes_items) { // allocate more set_max_items(max_sdes_items + SDES_ARRAY_INCREMENT); } if (num_sdes_items >= NUM_PREALLOCATED_RTCP_CHUNK_ITEMS) { if (!additional_items) { additional_items = OSCL_ARRAY_NEW(SDES_item, max_sdes_items - NUM_PREALLOCATED_RTCP_CHUNK_ITEMS); } additional_items[num_sdes_items - NUM_PREALLOCATED_RTCP_CHUNK_ITEMS] = item; chunk_size += item.content.len + 2; } else { chunk_items[num_sdes_items] = item; chunk_size += item.content.len + 2; } ++num_sdes_items; return true; }
// setup: used to configure attributes that aren't known by this_object() // at create() time such as living_name (and so can't be done in create()). void setup() { seteuid(getuid(this_object())); set_heart_beat(1); tick = 5 + random(10); enable_player(); set_max_items(30); this_object()->update_age(); // mon 7/3/99 CHAR_D->setup_char( this_object() ); }
static Validator* set_max_items_generic(Validator *v, size_t max) { return set_max_items(&array_validator_new()->base, max); }