Rogue Wave Views 5.5.1 |
Rogue Wave Views |
Rogue Wave Views Documentation Home |
Owns a list of objects of the class IlvAccessor
class.
More...
#include <ilviews/protos/accessor.h>
Public Member Functions | |
virtual IlBoolean | changeValue (const IlvValue &val) |
Changes the object's value. Both the name and the new value are contained in val. | |
virtual IlBoolean | changeValues (const IlvValue *values, IlUShort count) |
Changes several values of an object in a single call. The default implementation calls changeValue for all values. | |
virtual IlUInt | compareValues (const IlvAccessible *ref, IlvValue *values, IlUShort count, IlvValueArray &diffs) const |
Compares two objects and returns the differing attributes. | |
virtual void | getAccessors (const IlSymbol *const **accessors, const IlvValueTypeClass *const **types, IlUInt &count) const |
Returns the names of all the accessors known by this object. | |
virtual IlBoolean | isOutputValue (const IlSymbol *valueName) const |
Indicates whether value designates an accessor that can generate notifying values. | |
virtual IlvAccessor * | nextAccessor (IlAny &link) const =0 |
Iterator through the accessors. | |
virtual IlvValue & | queryValue (IlvValue &val) const |
Queries the value designated by value from the object. Both the value and the value type are stored in value. | |
virtual void | queryValues (IlvValue *values, IlUShort count) const |
Queries several values in a single call. The default implementation calls queryValue for each value. | |
Friends | |
class | IlvAccessor |
Owns a list of objects of the class IlvAccessor
class.
Library: ilvproto
An IlvAccessorHolder
owns a list of objects of the IlvAccessor
class. Each of these IlvAccessor
objects defines an accessor that is handled by the IlvAccessorHolder
object. Therefore, the accessors in an IlvAccessorHolder
can be defined dynamically by adding or removing IlvAccessor
objects to and from the IlvAccessorHolder
. The IlvAccessorHolder
class overrides the changeValue
[s], queryValue
[s], getAccessors
, and compareValues
methods of the IlvAccessible
class. Each of these methods looks at all the IlvAccessor
objects owned by the IlvAccessorHolder
, finds all the accessors that match the requested values, and calls the corresponding method of the matching IlvAccessor
s. IlvAccessorHolder
is an abstract class that does not define the way an IlvAccessor
is actually stored in the object. To do so, the nextAccessor
method must be overridden.
Accessors are base 'bricks' of behavior that hold data (in which case they are called 'attributes') or perform side effects. Therefore, an attribute is a name that can be referenced to store data or perform side effects when a call to changeValue
or queryValue
is made. An attribute can consist of several accessors, each of them defining part of what the attribute is meant to do.
Changes the object's value. Both the name and the new value are contained in val.
v | The value to be set (both name and value). |
Reimplemented from IlvAccessible.
Reimplemented in IlvGroup.
Changes several values of an object in a single call. The default implementation calls changeValue
for all values.
v | The changed values (both name and values). | |
c | The number of values. |
Reimplemented from IlvAccessible.
Reimplemented in IlvGroup.
virtual IlUInt IlvAccessorHolder::compareValues | ( | const IlvAccessible * | ref, | |
IlvValue * | values, | |||
IlUShort | count, | |||
IlvValueArray & | diffs | |||
) | const [virtual] |
Compares two objects and returns the differing attributes.
Compares the values of accessors known by this object with the corresponding values in the object ref. The values that differ are stored in diffs. The values stored are taken from the calling object (this), not from ref. The first method calls the getAccessors
method to get the list of all known accessors, while the second only compares the provided values. Then, both methods call compareValues
to actually compare the values.
ref | The object to compare to. | |
any | Specifies whether to compare values of unknown types and pointer types. | |
diffs | The differing attributes. | |
values | The attributes to compare in both objects. | |
count | The number of attributes to compare. |
Reimplemented from IlvAccessible.
virtual void IlvAccessorHolder::getAccessors | ( | const IlSymbol *const ** | a, | |
const IlvValueTypeClass *const ** | t, | |||
IlUInt & | c | |||
) | const [virtual] |
Returns the names of all the accessors known by this object.
Subclasses of IlvAccessible
must override this method by calling the static method DeclareAccessor
for each accessor handled by the subclass. The returned arrays are filled by the method and must not be freed.
a | Pointer to an array filled on return with the names of the accessors defined for the object. | |
t | Pointer to an array filled on return with the type of each accessor. | |
c | Number of accessors, set by the method. |
Implements IlvAccessible.
Reimplemented in IlvGroup.
Indicates whether value designates an accessor that can generate notifying values.
IlTrue
if value designates an accessor that can generate notifying values, that is, a value for which pushValue
calls may be issued. The default implementation returns IlFalse
. Subclasses such as IlvAccessorHolder
redefine this method. value | Name of the accessor. |
Reimplemented from IlvAccessible.
Reimplemented in IlvGroup.
virtual IlvAccessor* IlvAccessorHolder::nextAccessor | ( | IlAny & | link | ) | const [pure virtual] |
Iterator through the accessors.
Returns the next accessor from a list of accessors owned by the IlvAccessorHolder
object. If link is NULL
, the first accessor is returned, and link is modified so that the next call to nextAccessor
will return all the accessors successively. When all the accessors have been returned, the method returns 0
.
Implemented in IlvGroup.
Queries the value designated by value from the object. Both the value and the value type are stored in value.
value | The queried value name. |
Reimplemented from IlvAccessible.
Reimplemented in IlvGroup.
Queries several values in a single call. The default implementation calls queryValue
for each value.
v | The array of value names to be queried | |
c | The number of values to be queried. |
Reimplemented from IlvAccessible.
Reimplemented in IlvGroup.
© Copyright 2012, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.