---
name: "ACE_Flow_Spec"
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_Flow_Spec"
---

# ACE\_Flow\_Spec(3)

## NAME

ACE\_Flow\_Spec

## SYNOPSIS

```
#include <ace/OS.h>
class ACE_Flow_Spec
{
  private:
    : public FLOWSPEC { public: ACE_Flow_Spec (void);
    ACE_Flow_Spec (
        u_long token_rate,
        u_long token_bucket_size,
        u_long peak_bandwidth,
        u_long latency,
        u_long delay_variation,
        ACE_SERVICE_TYPE service_type,
        u_long max_sdu_size,
        u_long minimum_policed_size,
        int ttl,
        int priority
        );
    u_long token_rate (void);
    void token_rate (u_long tr);
    u_long token_bucket_size (void);
    void token_bucket_size (u_long tbs);
    u_long peak_bandwidth (void);
    void peak_bandwidth (u_long pb);
    u_long latency (void);
    void latency (u_long l);
    u_long delay_variation (void);
    void delay_variation (u_long dv);
    ACE_SERVICE_TYPE service_type (void);
    void service_type (ACE_SERVICE_TYPE st);
    u_long max_sdu_size (void);
    void max_sdu_size (u_long mss);
    u_long minimum_policed_size (void);
    void minimum_policed_size (u_long mps);
    int ttl (void);
    void ttl (int t);
    int priority (void);
    void priority (int p);
};
```

## PRIVATE MEMBERS

```
: public FLOWSPEC { public: ACE_Flow_Spec (void);
```

Default constructor.

```
ACE_Flow_Spec (
    u_long token_rate,
    u_long token_bucket_size,
    u_long peak_bandwidth,
    u_long latency,
    u_long delay_variation,
    ACE_SERVICE_TYPE service_type,
    u_long max_sdu_size,
    u_long minimum_policed_size,
    int ttl,
    int priority
    );
```

Constructor that initializes all the fields.

```
u_long token_rate (void);
```

```
void token_rate (u_long tr);
```

```
u_long token_bucket_size (void);
```

```
void token_bucket_size (u_long tbs);
```

```
u_long peak_bandwidth (void);
```

```
void peak_bandwidth (u_long pb);
```

```
u_long latency (void);
```

```
void latency (u_long l);
```

```
u_long delay_variation (void);
```

```
void delay_variation (u_long dv);
```

```
ACE_SERVICE_TYPE service_type (void);
```

```
void service_type (ACE_SERVICE_TYPE st);
```

```
u_long max_sdu_size (void);
```

```
void max_sdu_size (u_long mss);
```

```
u_long minimum_policed_size (void);
```

```
void minimum_policed_size (u_long mps);
```

```
int ttl (void);
```

```
void ttl (int t);
```

```
int priority (void);
```

```
void priority (int p);
```

## AUTHOR

Doug Schmidt schmidt@cs.wustl.edu, Jesper S. M\|ller stophph@diku.dk, and a cast of thousands...

## The ACE\_Sched\_Priority type should be used for platform-

independent thread and process priorities, by convention. int should be used for OS-specific priorities.

## typedef for the \_stat data structure

## Get/set the token rate in bytes/sec.

## Get/set the token bucket size in bytes.

## Get/set the PeakBandwidth in bytes/sec.

## Get/set the latency in microseconds.

## Get/set the delay variation in microseconds.

## Get/set the service type.

## Get/set the maximum SDU size in bytes.

## Get/set the minimum policed size in bytes.

## Get/set the time-to-live.

## Get/set the priority.

## Giving unique ACE scoped names for some important

RTSignal-Related constants. Becuase sometimes, different platforms use different names for these constants.

## LIBRARY

ace
