## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# csEventCord Class Reference

Event cord. More...

`#include <csutil/csevcord.h>`

Inheritance diagram for csEventCord:

[legend]
List of all members.

## Public Member Functions

| csEventCord (csEventID, bool=false)
| Create an event cord for a given name.
virtual csEventID | GetName () const
| Get the category of this cord.
virtual bool | GetPass () const
| Get whether events are passed to the system event queue.
virtual int | Insert (iEventHandler *, int priority)
| Insert an event handler into the event cord.
virtual void | Remove (iEventHandler *)
| Remove an event handler from the event cord.
virtual void | SetPass (bool flag)
| Set whether events are passed to the system event queue.
virtual | ~csEventCord ()
| Destructor.

## Protected Member Functions

void | Lock ()
| Lock the queue for modifications: NESTED CALLS TO LOCK/UNLOCK NOT ALLOWED!
void | Unlock ()
| Unlock the queue.

## Protected Attributes

csEventID | name
| The name of the events on this cord.
volatile bool | pass
| Pass events to the system queue?
PluginData * | plugins
| The cord itself.
volatile int | SpinLock
| Protection against multiple threads accessing the same cord.

## Friends

class | csEventOutlet
| iEventOutlet places events into cords.

## Classes

struct | PluginData

## Detailed Description

Event cord.

Definition at line 38 of file csevcord.h.

## Constructor & Destructor Documentation

csEventCord::csEventCord | ( | csEventID | ,
|  | bool | = `false`
| ) |

| Create an event cord for a given name.

virtual csEventCord::~csEventCord | ( |  | ) | `[virtual]`

| Destructor.

## Member Function Documentation

virtual csEventID csEventCord::GetName | ( |  | ) | const`[inline, virtual]`

| Get the category of this cord. Implements iEventCord. Definition at line 93 of file csevcord.h.

virtual bool csEventCord::GetPass | ( |  | ) | const`[inline, virtual]`

| Get whether events are passed to the system event queue. Implements iEventCord. Definition at line 87 of file csevcord.h.

virtual int csEventCord::Insert | ( | iEventHandler * | ,
|  | int | priority
| ) | `[virtual]`

| Insert an event handler into the event cord. Implements iEventCord.

void csEventCord::Lock | ( |  | ) | `[inline, protected]`

| Lock the queue for modifications: NESTED CALLS TO LOCK/UNLOCK NOT ALLOWED! Definition at line 65 of file csevcord.h.

virtual void csEventCord::Remove | ( | iEventHandler * |  | ) | `[virtual]`

| Remove an event handler from the event cord. Implements iEventCord.

virtual void csEventCord::SetPass | ( | bool | flag | ) | `[inline, virtual]`

| Set whether events are passed to the system event queue. Implements iEventCord. Definition at line 90 of file csevcord.h.

void csEventCord::Unlock | ( |  | ) | `[inline, protected]`

| Unlock the queue. Definition at line 67 of file csevcord.h.

## Friends And Related Function Documentation

friend class csEventOutlet `[friend]`

| iEventOutlet places events into cords. Definition at line 70 of file csevcord.h.

## Member Data Documentation

csEventID csEventCord::name `[protected]`

| The name of the events on this cord. Definition at line 46 of file csevcord.h.

volatile bool csEventCord::pass `[protected]`

| Pass events to the system queue? Definition at line 43 of file csevcord.h.

PluginData* csEventCord::plugins `[protected]`

| The cord itself. Definition at line 59 of file csevcord.h.

volatile int csEventCord::SpinLock `[protected]`

| Protection against multiple threads accessing the same cord. Definition at line 62 of file csevcord.h.

The documentation for this class was generated from the following file:

- csutil/csevcord.h