rooAttribute


class description - source file - inheritance tree

class rooAttribute : public roo


    public:
rooAttribute rooAttribute() rooAttribute rooAttribute(void* imp) rooAttribute rooAttribute(rooAttribute&) virtual void ~rooAttribute() Int_t array_size() const TClass* Class() const rooClass& class_type_of() const rooNumericValue default_value() UInt_t dimension() const Int_t element_size() const Bool_t has_default_value() const virtual UInt_t id() const Bool_t is_base_class() const Bool_t is_read_only() const Bool_t is_static() const virtual TClass* IsA() const Bool_t operator==(const rooAttribute&) const Int_t position() const virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b)

Data Members

private:
rooNumericValue* fDefaultValue default_value() rooClass* fClassTypeOf class_type_of()


See also

rooRelationship

Class Description

 rooAttribute corresponds to d_Attribute Class

 The class rooClass ( aka d_Class ) represents descriptors for attributes of
 classes in the schema of the federated database. An instance of rooAttribute
 (aka d_Attribute) is called an attribute descriptor.

______________________________________________________________________________

             About Attribute Descriptors

 An attribute descriptor provides information about a particular attribute,
 called its described attribute. The described attribute is defined by some
 class. It stores a particular piece of data for a persistent instance of
 that class and its derived classes. The described attribute holds either a
 single value of some type, or a fixed-size array of values of the same type.

______________________________________________________________________________

             Obtaining an Attribute Descriptor

 You should never instantiate this class directly. Instead, you can obtain an
 attribute descriptor by calling a member function of either a class
 descriptor for the class that defines the attribute or a class descriptor
 for a class that inherits the attribute.

rooAttribute()
 default ctor., for internal use only

~rooAttribute()
 dtor. for internal use only

UInt_t dimension() const
 dimension() returns the layout size of the attribute on the platform
 running the application.

UInt_t id() const
 The methods position() and id() yield different numbers.  The one
 Active Schema uses to access objects is position().  id() is useful
 because unlike position(), the value it returns stays constant
 across a schema evolution.  Note also that unlike position() values,
 id() values are 1-based; they are never zero.

 Second, position() as the characteristic of an attribute may be
 misleading in inherited contexts.  If an attribute's class is used
 as a non-leftmost base class, instances of the derived class may
 start at, say, position 2, but for the base's first attribute--which
 could well have other inheritance contexts--position() returns 0.
 To avoid misinterpretation one can use the d_Class method
 position_in_class(), which always reflects inheritance context.

Int_t position() const
 The methods position() and id() yield different numbers.  The one
 Active Schema uses to access objects is position().  id() is useful
 because unlike position(), the value it returns stays constant
 across a schema evolution.  Note also that unlike position() values,
 id() values are 1-based; they are never zero.

 Second, position() as the characteristic of an attribute may be
 misleading in inherited contexts.  If an attribute's class is used
 as a non-leftmost base class, instances of the derived class may
 start at, say, position 2, but for the base's first attribute--which
 could well have other inheritance contexts--position() returns 0.
 To avoid misinterpretation one can use the d_Class method
 position_in_class(), which always reflects inheritance context.

Int_t array_size() const
 For static array attributes, array_size() returns the cardinality
 of the array--or 1 if it is not an array.

Int_t element_size() const
 element_size() returns the size in bytes of the type of the attribute
 on the running platform.  Therefore, dimension() is
 (element_size() * array_size()).

 If the described attribute is not a fixed-size array, this member function
 returns the same number as dimension.

Bool_t is_base_class() const
 Returns kTRUE if the described attribute is a base class;
 otherwise, kFALSE.

 A base class is described like an embedded-class attribute;
 this member function allows you to test whether an embedded-class
 attribute is a base class.

Bool_t has_default_value() const
 Returns kTRUE if the described attribute has a default value;
 otherwise, kFALSE.

rooNumericValue default_value()
 Returns a numeric value containing the default value for the described
 attribute, or an invalid numeric value if the described attribute type
 is not a basic numeric type or if the attribute has no default value.

 You can call has_default_value() to test whether the described attribute
 has a default value.



Inline Functions


           rooAttribute rooAttribute(void* imp)
                 Bool_t is_read_only() const
                 Bool_t is_static() const
        const rooClass& class_type_of() const
                 Bool_t operator==(const rooAttribute&) const
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
           rooAttribute rooAttribute(rooAttribute&)


Author: Valeriy Onuchin 11/09/2000


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.