---
name: "ACE_Cache_Map_Iterator"
section: "3"
platform: "linux"
package: "libace-doc"
version: "5.0.7-4"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/ACE_Cache_Map_Iterator"
---

# ACE\_Cache\_Map\_Iterator(3)

Defines a iterator for the Cache\_Map\_Manager.

## NAME

ACE\_Cache\_Map\_Iterator -  Defines a iterator for the Cache\_Map\_Manager.

## SYNOPSIS

```
#include <ace/Cache_Map_Manager.h>
template<class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY, class ATTRIBUTES>
class ACE_Cache_Map_Iterator
{
  public:
    typedef ACE_Reference_Pair<KEY, VALUE> value_type;
    typedef ACE_Pair <VALUE, ATTRIBUTES> CACHE_VALUE;
    ACE_Cache_Map_Iterator (const IMPLEMENTATION &iterator_impl);
    ACE_Cache_Map_Iterator (
        const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs
        );
    virtual ~ACE_Cache_Map_Iterator (void);
    (
        const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs
        );
    int operator== (
        const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs
        ) const;
    int operator!= (
        const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs
        ) const;
    ACE_Reference_Pair<KEY, VALUE> operator* (void) const;
    ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &operator++ (
        void
        );
    ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> operator++ (
        int
        );
    ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &operator-- (
        void
        );
    ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> operator-- (
        int
        );
    IMPLEMENTATION &iterator_implementation (void);
    void dump (void) const;
    ACE_ALLOC_HOOK_DECLARE;
  protected:
    IMPLEMENTATION iterator_implementation_;
};
```

## DESCRIPTION

Implementation to be provided by the iterator of the map managed by the ACE\_Cache\_Map\_Manager.

## Traits.

```
typedef ACE_Reference_Pair<KEY, VALUE> value_type;
```

```
typedef ACE_Pair <VALUE, ATTRIBUTES> CACHE_VALUE;
```

The actual value mapped to the key in the cache. The attributes are used by the strategy and is transperant to the cache user.

## Initialisation and termination methods.

```
ACE_Cache_Map_Iterator (const IMPLEMENTATION &iterator_impl);
```

```
ACE_Cache_Map_Iterator (
    const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs
    );
```

Copy constructor.

```
virtual ~ACE_Cache_Map_Iterator (void);
```

## Iteration methods.

```
    const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs
    );
```

assignment operator.

```
int operator== (
    const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs
    ) const;
```

```
int operator!= (
    const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs
    ) const;
```

Comparision operators.

```
ACE_Reference_Pair<KEY, VALUE> operator* (void) const;
```

Returns a reference to the internal element this is pointing to.

## STL styled iteration, compare, and reference functions.

```
ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &operator++ (
    void
    );
```

Prefix advance

```
ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> operator++ (
    int
    );
```

Postfix advance.

```
ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &operator-- (
    void
    );
```

Prefix reverse.

```
ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> operator-- (
    int
    );
```

Postfix reverse.

```
IMPLEMENTATION &iterator_implementation (void);
```

Returns the iterator of the internal map in the custody of the Cache\_Map\_Manager.

```
void dump (void) const;
```

Dump the state of an object.

```
ACE_ALLOC_HOOK_DECLARE;
```

Declare the dynamic allocation hooks.

## AUTHOR

Kirthika Parameswaran kirthika@cs.wustl.edu

## LIBRARY

ace
