[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
RDDFUNCS
The virtual method table for the work area
------------------------------------------------------------------------------
Structure
typedef struct _RDDFUNCS
{
/* Movement and positioning methods */
DBENTRYP_SP bof;
DBENTRYP_SP eof;
DBENTRYP_SP found;
DBENTRYP_V goBottom;
DBENTRYP_L go;
DBENTRYP_I goToId;
DBENTRYP_V goTop;
DBENTRYP_SI seek;
DBENTRYP_L skip;
DBENTRYP_L skipFilter;
DBENTRYP_L skipRaw;
/* Data management */
DBENTRYP_VP addField;
DBENTRYP_S append;
DBENTRYP_I createFields;
DBENTRYP_V delete;
DBENTRYP_SP deleted;
DBENTRYP_SP fieldCount;
DBENTRYP_VP fieldDisplay;
DBENTRYP_SSI fieldInfo;
DBENTRYP_SVP fieldName;
DBENTRYP_V flush;
DBENTRYP_PP getRec;
DBENTRYP_SI getValue;
DBENTRYP_SVP getVarLen;
DBENTRYP_V goCold;
DBENTRYP_V goHot;
DBENTRYP_VP putRec;
DBENTRYP_SI putValue;
DBENTRYP_V recall;
DBENTRYP_LP reccount;
DBENTRYP_ISI recInfo;
DBENTRYP_I recno;
DBENTRYP_S setFieldExtent;
/* Work Area/Database management */
DBENTRYP_VP alias;
DBENTRYP_V close;
DBENTRYP_VP create;
DBENTRYP_SI info;
DBENTRYP_V new;
DBENTRYP_VP open;
DBENTRYP_V release;
DBENTRYP_SP structSize;
DBENTRYP_VP sysName;
DBENTRYP_VP dbEval;
DBENTRYP_V pack;
DBENTRYP_LSP packRec;
DBENTRYP_VP sort;
DBENTRYP_VP trans;
DBENTRYP_VP transRec;
DBENTRYP_V zap;
/* Relational Methods */
DBENTRYP_VP childEnd;
DBENTRYP_VP childStart;
DBENTRYP_VP childSync;
DBENTRYP_V syncChildren;
DBENTRYP_V clearRel;
DBENTRYP_V forceRel;
DBENTRYP_SVP relArea;
DBENTRYP_VP relEval;
DBENTRYP_SVP relText;
DBENTRYP_VP setRel;
/* Order Management */
DBENTRYP_VP orderListAdd;
DBENTRYP_V orderListClear;
DBENTRYP_VP orderListDelete;
DBENTRYP_VP orderListFocus;
DBENTRYP_V orderListRebuild;
DBENTRYP_VP orderCondition;
DBENTRYP_VP orderCreate;
DBENTRYP_VP orderDestroy;
DBENTRYP_SVP orderInfo;
/* Filters and Scope Settings */
DBENTRYP_V clearFilter;
DBENTRYP_V clearLocate;
DBENTRYP_V clearScope;
DBENTRYP_VPLP countScope;
DBENTRYP_VP filterText;
DBENTRYP_SI scopeInfo;
DBENTRYP_VP setFilter;
DBENTRYP_VP setLocate;
DBENTRYP_VP setScope;
DBENTRYP_VLP skipScope;
/* Miscellaneous */
DBENTRYP_VP compile;
DBENTRYP_VP error;
DBENTRYP_I evalBlock;
/* Network operations */
DBENTRYP_VSP rawlock;
DBENTRYP_VP lock;
DBENTRYP_L unlock;
/* Memo file methods */
DBENTRYP_V closeMemFile;
DBENTRYP_VP createMemFile;
DBENTRYP_SVP getValueFile;
DBENTRYP_VP openMemFile;
DBENTRYP_SVP putValueFile;
/* Database file header methods */
DBENTRYP_V readDBHeader;
DBENTRYP_V writeDBHeader;
/* Special and reserved methods. */
DBENTRYP_SVP whoCares;
} RDDFUNCS;
typedef RDDFUNCS far * LPRDDFUNCS;
typedef LPRDDFUNCS far * LPLPRDDFUNCS;
Elements
The elements of the RDDFUNCS structure define the slots of the virtual
method table. Each slot in the table represents the location of a
specific method (i.e., the address of the function that acts as the
pseudomethod). Methods that will not be supported by the RDD should
have a NULL placed in its corresponding slot. When the RDD is
initialized, CA-Clipper will use the default behavior of the superclass
instead. If no functionality is provided by the superclass, CA-Clipper
will generate an appropriate "unsupported" error.
Warning! Under no circumstance should the virtual method table be
expanded. The size and ordinal positioning of the methods in the table
is critical. Failure to adhere to this arrangement will cause
unpredictable results and potential memory corruption.
Files Header file is Rdd.api.
Used By AREA
See Also:
AREA
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson