Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ EvmEventPost(3) — Tru64 UNIX 5.0a

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

EvmConnControl(3)

EvmConnCreate(3)

EvmConnDestroy(3)

EvmConnRegistrationGet(3)

EvmEventCreate(3)

EvmEventDestroy(3)

EVM(5)

EvmConnection(5)

EvmEvent(5)

EvmEventPost(3)  —  Subroutines

NAME

EvmEventPost − Posts an event

LIBRARY

EVM Support Library (libevm.so, libevm.a)

SYNOPSIS

#include <evm/evm.h>

EvmStatus_t EvmEventPost(
        EvmConnection_t connection,
        const EvmEvent_t event);

OPERANDS

connectionThe connection through which events are posted.  See the EvmConnCreate(3) reference page. 

eventThe event that is to be posted to the specified connection.  See the EvmEventCreate(3) reference page. 

DESCRIPTION

Once a posting connection is established to the EVM daemon, a client uses EvmEventPost() to post events for distribution to subscribers. 

When the posting function is called, it does some preliminary validation of the event.  If preliminary validation of the event fails, the event is not passed to the daemon and the failure is reported immediately through the return code. 

If preliminary validation succeeds, the event is passed to the daemon.  The type of response depends on the response mode specified when the connection was created. 

NOTES

Posting an event does not destroy it.  The user must explicitly call EvmEventDestroy() to destroy the event and free its memory once it is no longer needed. 

You should avoid posting a large number of events in rapid succession, since this may cause the connection’s send buffer to fill, and the posting process to block until the EVM daemon has relieved some or all of the data.  Although this is a normal part of process synchronization, some high-performance processes may prefer to block as infrequently as possible.   EvmConnControl() can be used to increase the size of the send buffer.   See the EvmConnControl reference page for more information. 

RESTRICTIONS

None

RETURN VALUES

EvmERROR_NONE
The operation was completed without error.

EvmERROR_INVALID_ARGUMENT
One of the arguments to the function was invalid.

EvmERROR_INVALID_OPERATION
The EVM daemon rejected the event because it is not registered.

EvmERROR_INVALID_VALUE
A value in a structure member is invalid.

EvmERROR_NO_MEMORY
An operation failed because an attempt to acquire heap memory failed.

EvmERROR_QUEUED
One or more messages is queued for sending to the EVM daemon.

EvmERROR_READ
A read error occurred while reading from the EVM daemon connection.  Invoke EvmConnDestroy() to destroy the connection. 

EvmERROR_WRITE
A write error occurred while writing to the EVM daemon connection.  Invoke EvmConnDestroy() to destroy the connection. 

ERRORS

None

FILES

None

SEE ALSO

Routines: EvmConnControl(3), EvmConnCreate(3), EvmConnDestroy(3), EvmConnRegistrationGet(3), EvmEventCreate(3), EvmEventDestroy(3)

Event Management: EVM(5)

Event Connection: EvmConnection(5)

EVM Events: EvmEvent(5)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026