|
/* Gamelon(tm) File I/O Library Sample Code C Language */ /* (C)1994 Menai Corporation(tm) Released for public use */
/* Example 8. How to conduct a Wandering Transaction */ /* alteration. */
/* The Wandering Transaction is simply an aggregation */ /* of multiple individual alterations. As a result, in */ /* order to specify a Wandering Transaction, the */ /* program need only indicate the beginning and end of */ /* the Wandering Transaction as follows: */
/* Beginning file layout: */ /* { } */ /* [2]{ }[3.14159] */ /* [5700304] */
#include <stdlib.h> #include "gfcursor.h"
int main(void) { char newchar = 'u'; short i = 17; int valid; CURSOR *c = new_CURSOR(NULL, "newfile", AM_SHARED, NULL, 0); eCursorQueryValid(c, &valid); if (!valid) exit(1); eCursorMoveIn(c); eCursorMoveLast(c, OT_OBJ); eCursorMovePrior(c, OT_OBJ); eCursorMoveIn(c); eCursorMovePostLast(c); eAltBeginWanderingTransaction(c); eAltInsert(c); eObjWriteChar(c, newchar); eCursorMoveOut(c); eCursorMovePreFirst(c); eAltAppend(c); eObjWriteAggregate(c); eCursorMoveNext(c, OT_OBJ); eAltModify(c); /* Note: Newly added aggregate not */ /* accessible yet. Object being modified */ /* is the data object containing '2'. */ eObjWriteShort(c, i); eAltCommitWanderingTransaction(c); delete_CURSOR(c); return 0; }
/* Ending file layout: */ /* { } */ /* {}[17]{ }[3.14159] */ /* [5700304]['u'] */
/* Any and all individual simple or block alterations */ /* specified between the Begin Wandering Transaction */ /* and Commit Wandering Transaction calls will be */ /* submitted to the file as a single set of changes. */ /* They will only be written to file if all the */ /* specified changes can be written to file at the */ /* same time. */ |
||||||||||||||
| |
||||||||||||||
|
Home | Product | Consulting | Programming | Reviews | Company | Site Map | Guest Book |
||||||||||||||
|
Menai Corporation, 1010 El Camino Real, Suite 300, Menlo Park, California 94025-4335 |
||||||||||||||
|
Copyright © 1996-98 Menai Corporation. All Rights Reserved. Menai, Gamelon and gamelon(stylized) are worldwide trademarks of Menai Corporation, registered in the United States of America, and the .[g] logo is a worldwide trademark of Menai Corporation. All other trademarks are owned by their respective owners. |
||||||||||||||