Overview | Modules | Class Hierarchy | Classes | Members

Public Member Functions | Protected Member Functions | Protected Attributes | Friends
tlp::VectorGraphProperty< TYPE > Class Template Reference

That class enables to factorize code for NodeProperty and EdgeProperty in VectorGraph, it could not be used directly. More...

`#include <vectorgraphproperty.h>`

Inheritance diagram for tlp::VectorGraphProperty< TYPE >:
[legend]
Collaboration diagram for tlp::VectorGraphProperty< TYPE >:
[legend]

List of all members.

## Public Member Functions

- std::vector< TYPE >
  ::const_reference operator[] (const size_t id) const
    read accessor
- std::vector< TYPE >::reference operator[] (const size_t id)
    read/write accessor
- void setAll (const TYPE &obj)
- void set (const size_t id, const TYPE &obj)
    write accessor
- std::vector< TYPE >
  ::const_reference get (const size_t id) const
    read accessor
- virtual bool isValid () const =0

## Protected Member Functions

- VectorGraphProperty ()
- VectorGraphProperty (const VectorGraphProperty &obj)
- VectorGraphProperty (ValArray< TYPE > *array, VectorGraph *graph)

## Protected Attributes

- ValArray< TYPE > * _array
- VectorGraph * _graph

## Friends

- class VectorGraph

## Detailed Description

### template<typename TYPE>
class tlp::VectorGraphProperty< TYPE >

That class enables to factorize code for NodeProperty and EdgeProperty in VectorGraph, it could not be used directly.

See also:
  NodeProperty
  EdgeProperty
  VectorGraph

## Constructor & Destructor Documentation

template<typename TYPE>

tlp::VectorGraphProperty< TYPE >::VectorGraphProperty | ( |  | ) | `[inline, protected]`

template<typename TYPE>

tlp::VectorGraphProperty< TYPE >::VectorGraphProperty | ( | const VectorGraphProperty< TYPE > & | obj | ) | `[inline, protected]`

template<typename TYPE>

tlp::VectorGraphProperty< TYPE >::VectorGraphProperty | ( | ValArray< TYPE > * | array,
|  | VectorGraph * | graph
| ) |  | `[inline, protected]`

## Member Function Documentation

template<typename TYPE>

std::vector<TYPE>::const_reference tlp::VectorGraphProperty< TYPE >::get | ( | const size_t | id | ) | const`[inline]`

read accessor

return the value of the ith element.

template<typename TYPE>

virtual bool tlp::VectorGraphProperty< TYPE >::isValid | ( |  | ) | const`[pure virtual]`

Implemented in tlp::EdgeProperty< TYPE >, tlp::NodeProperty< TYPE >, tlp::EdgeProperty< unsigned char >, tlp::NodeProperty< bool >, and tlp::NodeProperty< Observable * >.

template<typename TYPE>

std::vector<TYPE>::reference tlp::VectorGraphProperty< TYPE >::operator[] | ( | const size_t | id | ) | `[inline]`

read/write accessor

return the value of the ith element and enables to modify it.

template<typename TYPE>

std::vector<TYPE>::const_reference tlp::VectorGraphProperty< TYPE >::operator[] | ( | const size_t | id | ) | const`[inline]`

read accessor

return the value of the ith element.

template<typename TYPE>

void tlp::VectorGraphProperty< TYPE >::set | ( | const size_t | id,
|  | const TYPE & | obj
| ) |  | `[inline]`

write accessor

change the value of the ith element.

template<typename TYPE>

void tlp::VectorGraphProperty< TYPE >::setAll | ( | const TYPE & | obj | ) | `[inline]`

Set all the value of the property to the value given in parameter

That function affect the same value to all elements of the vector, there is no effect on the future value added in the vector

Warning:
  There is differences between the setAll of the MutableContainer and the setAll of VectorProperty (NodeProperty or EdgeProperty). The MutableContainer, ensures that new inserted element will have the value given by the last setAll

See also:
  MutableContainer

## Friends And Related Function Documentation

template<typename TYPE>

friend class VectorGraph `[friend]`

Reimplemented in tlp::EdgeProperty< TYPE >, tlp::NodeProperty< TYPE >, tlp::EdgeProperty< unsigned char >, tlp::NodeProperty< bool >, and tlp::NodeProperty< Observable * >.

## Member Data Documentation

template<typename TYPE>

ValArray<TYPE>* tlp::VectorGraphProperty< TYPE >::_array `[protected]`

TODO

template<typename TYPE>

VectorGraph* tlp::VectorGraphProperty< TYPE >::_graph `[protected]`

TODO

Tulip Software by LaBRI Visualization Team 2001 - 2012