---
name: "ACE_IO_SAP"
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_IO_SAP"
---

# ACE\_IO\_SAP(3)

Defines the methods for the base class of the ACE\_IO\_SAP abstraction, which includes ACE\_FILE and ACE\_DEV.

## NAME

ACE\_IO\_SAP -  Defines the methods for the base class of the ACE\_IO\_SAP abstraction, which includes ACE\_FILE and ACE\_DEV.

## SYNOPSIS

```
#include <ace/IO_SAP.h>
class ACE_IO_SAP
{
  public:
    enum{ INVALID_HANDLE = -1 };
    ~ACE_IO_SAP (void);
    int control (int cmd, void *) const;
    int enable (int value) const;
    int disable (int value) const;
    ACE_HANDLE get_handle (void) const;
    void set_handle (ACE_HANDLE handle);
    void dump (void) const;
    ACE_ALLOC_HOOK_DECLARE;
  protected:
    ACE_IO_SAP (void);
  private:
    ACE_HANDLE handle_;
    static pid_t pid_;
};
```

## Common I/O handle options related to files.

```
int enable (int value) const;
```

Enable asynchronous I/O (ACE\_SIGIO), urgent data (ACE\_SIGURG), non-blocking I/O (ACE\_NONBLOCK), or close-on-exec (ACE\_CLOEXEC), which is passed as the value.

```
int disable (int value) const;
```

Disable asynchronous I/O (ACE\_SIGIO), urgent data (ACE\_SIGURG), non-blocking I/O (ACE\_NONBLOCK), or close-on-exec (ACE\_CLOEXEC), which is passed as the value.

```
ACE_HANDLE get_handle (void) const;
```

Get the underlying handle.

```
void set_handle (ACE_HANDLE handle);
```

Set the underlying handle.

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

Dump the state of an object.

```
ACE_ALLOC_HOOK_DECLARE;
```

Declare the dynamic allocation hooks.

## AUTHOR

Doug Schmidt

## LIBRARY

ace
