INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES

indexing

title: "The IStorage interface is implemented by OLE and is used by", "containers to instantiate a directory-like collection of", "storage and stream objects in which an embedded object%'s", "native data is saved. An application can also save its", "native data to IStorage. The IStorage interface contains", "methods for managing root IStorage objects, child IStorage", "objects, and IStream objects.", "An OLE application must release any owned IStorage instance", "pointers regardless of whether a higher-level IStorage has", "caused the pointers to become invalid. This is necessary", "to de-allocate memory."
project: "Visual Eiffel Library"
revision: "$Revision: 1.2 $"
copyright: "Copyright (C) 1996-2005 Object Tools Group"
license: "http://visual-eiffel.com/license"
cluster: wine
class EOLE_STORAGE
inherit

EOLE_UNKNOWN
redefine
create_ole_interface_ptr,
on_query_interface
end
creation

make
feature

make
-- Purpose:
-- Create an object.
-- Params:
-- None.
-- Return Value:
-- None.
-- Notes:
-- It's a dummy constructor now.

create_compound_file (filename: STRING; mode: BIT 32)
-- Purpose:
-- Creates a new root compound file in the file system.
-- Params:
-- filename [in]
-- Specifies the path of the compound file to create.
-- This can be an emty string. If empty, a temporary compound
-- file is allocated with a unique name.
-- mode [in]
-- Specifies the access mode to use when opening the new
-- compound file. This parameter consists of the OR-ing of
-- constants from the EOLE_STGM class (eolestgm.e).
-- See comments in this class for meaning of valid
-- create modes.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

open_compound_file (filename: STRING; mode: BIT 32)
-- Purpose:
-- Opens an existing IStorage object in the file system.
-- Params:
-- filename [in]
-- Specifies the path of the compound file to open.
-- mode [in]
-- Specifies the access mode to use when opening the existing
-- compound file. This parameter consists of the OR-ing of
-- constants from the EOLE_STGM class (eolestgm.e).
-- See comments in this class for meaning of
-- valid open modes.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

is_compound_file (filename: STRING): BOOLEAN
-- Purpose:
-- Determines whether a particular disk file contains
-- an IStorage object.
-- Params:
-- filename [in]
-- Name of the disk file be examined.
-- Return Value:
-- True, if the file contains an IStorage.
-- False, otherwise.
-- Notes:
-- None.

create_stream (stream_name: STRING; mode: BIT 32): EOLE_STREAM
-- Purpose:
-- Create and immediately open a new IStream object contained
-- in this storage object.
-- Params:
-- stream_name [in]
-- The name by which the newly created stream can later
-- be reopened.
-- mode [in]
-- Defines the access mode to use when opening the newly
-- created stream. This parameter consists of the OR-ing of
-- constants from the EOLE_STGM class (eolestgm.e).
-- See comments in this class for meaning of
-- valid create modes.
-- Return Value:
-- Created EOLE_STREAM object. (Never Void!)
-- Notes:
-- !!! IMPORTANT !!! User should NEVER compare the return value
-- of this method to Void reference to determine is the method
-- call was successful. User MUST inspect the value, returned by
-- 'get_status_code' instead.

open_stream (stream_name: STRING; mode: BIT 32): EOLE_STREAM
-- Purpose:
-- Open an existing named stream according to the access mode.
-- Params:
-- stream_name [in]
-- The name of the stream to open.
-- mode [in]
-- Defines the access mode to use when opening the stream.
-- This parameter consists of the OR-ing of constants
-- from the EOLE_STGM class (eolestgm.e).
-- See comments in this class for meaning of valid open modes.
-- Return Value:
-- Opened EOLE_STREAM object. (Never Void!)
-- Notes:
-- 1. Child stream object MUST ALWAYS be opened in
-- EOLE_STG_SHARE_EXCLUSIVE access mode.
-- 2. !!! IMPORTANT !!! User should NEVER compare the return
-- value of this method to Void reference to determine is the
-- method call was successful. User MUST inspect the value,
-- returned by 'get_status_code' instead.

create_substorage (stg_name: STRING; mode: BIT 32): EOLE_STORAGE
-- Purpose:
-- Create and open a new IStorage object within this
-- storage object.
-- Params:
-- stg_name [in]
-- The name by which the newly created storage can later
-- be (re)opened.
-- mode [in]
-- Defines the access mode to use when opening the newly
-- created storage object. This parameter consists of the
-- OR-ing of constants from the EOLE_STGM class (eolestgm.e).
-- See comments in this class for meaning of
-- valid create modes.
-- Return Value:
-- Created EOLE_STORAGE object. (Never Void!)
-- Notes:
-- !!! IMPORTANT !!! User should NEVER compare the return value
-- of this method to Void reference to determine is the method
-- call was successful. User MUST inspect the value, returned by
-- 'get_status_code' instead.

open_substorage (stg_name: STRING; mode: BIT 32): EOLE_STORAGE
-- Purpose:
-- Open an existing IStorage object contained within this
-- storage object according to access mode.
-- Params:
-- stg_name [in]
-- The name of the storage element to open.
-- mode [in]
-- Defines the access mode to use when opening the storage
-- object. This parameter consists of the OR-ing of constants
-- from the EOLE_STGM class (eolestgm.e).
-- See comments in this class for meaning of valid open modes.
-- Return Value:
-- Opened EOLE_STORAGE object. (Never Void!)
-- Notes:
-- 1. Child storage object MUST ALWAYS be opened in
-- EOLE_STG_SHARE_EXCLUSIVE access mode.
-- 2. !!! IMPORTANT !!! User should NEVER compare the return
-- value of this method to Void reference to determine is the
-- method call was successful. User MUST inspect the value,
-- returned by 'get_status_code' instead.

destroy_element (element_name: STRING)
-- Purpose:
-- Remove an element from this storage, subject to the
-- transaction mode in which the storage object was opened.
-- Params:
-- element_name [in]
-- Name of the element to remove.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

copy_to (stg_dest: EOLE_STORAGE)
-- Purpose:
-- Copy the entire contents of an open EOLE_STORAGE object
-- into the storage object stg_dest.
-- Params:
-- stg_dest [in]
-- Opened storage object where this open storage object
-- is to be copied.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

move_element_to (element_name: STRING; stg_dest: EOLE_STORAGE; new_element_name: STRING; movmode: INTEGER)
-- Purpose:
-- Move an IStorage element to the indicated new
-- destination container.
-- Params:
-- element_name [in]
-- Name of the element of this IStorage to be moved.
-- stg_dest [in]
-- The destination container into which the element
-- is to be placed.
-- new_element_name [in]
-- The new name to give to the element in its new container.
-- movmode [in]
-- Specifies how the move is to happen. This parameter can be
-- either EOLE_STGMOVE_MOVE or EOLE_STGMIVE_COPY.
-- This constant declared in EOLE_STGMOVE class (eolemove.e)
-- See comments in this class for meaning of valid move modes.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

rename_element (old_element_name, new_element_name: STRING)
-- Purpose:
-- Renames an element contained in storage, subject to the
-- transaction state of the IStorage object.
-- Params:
-- old_element_name [in]
-- The old name of the element.
-- new_element_name [in]
-- The new name of the element.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

enum_elements: ARRAY [EOLE_STATSTG]
-- Purpose:
-- Enumerate the elements immediately contained
-- within this storage object.
-- Params:
-- None.
-- Return Value:
-- Array of the EOLE_STATSTG objects, describing the storage
-- elements.
-- Notes:
-- None.

set_class (clsid: STRING)
-- Purpose:
-- Persistently store the object's CLSID.
-- Params:
-- clsid [in]
-- Specifies the CLSID to be associated with this IStorage.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

commit (mode: BIT 32)
-- Purpose:
-- Commit any changes made to an IStorage object since it was
-- opened or last committed to persistent storage.
-- Params:
-- mode [in]
-- Controls how the object is to be committed to IStorage.
-- This parameter consist of the OR-ing constants from the
-- EOLE_STGC class (eolestgc.e).
-- See comments in this class for meaning of valid move modes.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

revert
-- Purpose:
-- Discard all changes made in or made visible to this storage
-- object by nested commits since the storage object was opened
-- or last committed.
-- Params:
-- None.
-- Return Value:
-- None.
-- Notes:
-- Error status of this operation is available throw
-- the 'get_status_code' method.

create_ole_interface_ptr: POINTER
-- Purpose:
-- Creation of corresponding C++ object
-- Params:
-- None
-- Return Value:
-- Pointer to the corresponding C++ object.
-- Notes:
-- This method should be never called.
end -- class EOLE_STORAGE

INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES