#ifndef _rooVArrayObject_h #define _rooVArrayObject_h #ifndef _rooCollectionObject_h #include "rooCollectionObject.h" #endif // // ROOT wrappers around ActiveSchema classes ( see ooas.h ) // ///////////////////////////////////////////////////////////////////////////////// class rooVArrayObject : public rooCollectionObject { private: rooNumericValue* fNumericValue; // get() rooObj* fOoref; // get_ooref() rooStringValue* fStringValue; // get_string() rooClassObject* fClassObject; // get_class_obj() rooClassObject* fContainedIn; // contained_in() rooType* fType; // type_of() public: rooVArrayObject(); rooVArrayObject(void* imp) { setImp(imp); } rooVArrayObject(const rooVArrayObject &); rooVArrayObject & operator=(const rooVArrayObject &); virtual ~rooVArrayObject(); rooNumericValue get(Int_t); rooClassObject get_class_obj(Int_t); rooObj get_ooref(Int_t); rooStringValue get_string(Int_t); Bool_t set(Int_t, const rooNumericValue&); Bool_t set_ooref(Int_t, const rooObj&); UInt_t cardinality() const; UInt_t size() const { return this->cardinality(); } // rooObjItr create_iterator(); Bool_t extend(const rooNumericValue&); Bool_t extend(const rooObj&); void insert_element(const rooNumericValue&); void insert_element(const rooObj&); Bool_t is_empty() const { return this->size() == 0; } void remove_all() { this->resize(0); } void replace_element_at(const rooNumericValue&, UInt_t); void replace_element_at(const rooObj&, UInt_t); // void replace_element_at(const rooNumericValue&, const rooObjItr &); // void replace_element_at(const rooObj&,const rooObjItr &); Bool_t resize(UInt_t); Bool_t update(); UInt_t upper_bound() const { return this->size(); } const rooType & type_of(); rooClassObject & contained_in(); virtual Bool_t is_varray_object() const { return kTRUE; } ClassDef(rooVArrayObject,0) // corresponds to VArray_Object }; #endif // _rooVArrayObject_h