SECOM
Overview Cluster Class Classes Index          Top Features

secom.ewg

Class EWG_STRUCT


Known direct descendants

COM_DEVICE_CONTROL_BLOCK, COM_TIMEOUTS, COM_PROPERTIES, COM_STATUS

Features

Invariants

indexing

description

Abstract ancestor of all struct wrappers

library

Eiffel Wrapper Generator Library

copyright

Copyright (c) 1999, Andreas Leitner and others

license

Eiffel Forum License v2 (see license.txt)

deferred class EWG_STRUCT

feature -- Access

exists: BOOLEAN

-- Does item point to a valid C struct ?

is_shared: BOOLEAN

-- Is the contents of item referenced by other C or Eiffel code?
-- If is_shared is True then when the current object will be
-- collected by the garbage collector, the wrapped struct will
-- also be freed.
-- This is a good idea, only if you can be sure that when the
-- Eiffel object gets collected, the C side does not have a reference
-- to the wrapped struct anymore.

require

exists: exists

item: POINTER

-- Pointer to the wrapped struct

require

exists: exists

ensure

item_not_default_pointer: Result /= Default_pointer

sizeof: INTEGER

-- Size of the struct in bytes
-- This needs to be redefined by the
-- decendant.

deferred

ensure

sizeof_positive: Result > 0

invariant

managed_data_not_void: managed_data /= Void
managed_capacity_equals_sizeof: exists implies managed_data.capacity = sizeof

Documentation generated by edoc