home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.0 / NeXTSTEP3.0.iso / NextDeveloper / Headers / indexing / IXRecordManager.h < prev    next >
Text File  |  1992-07-10  |  2KB  |  69 lines

  1. /*
  2. IXRecordManager.h
  3. Copyright 1991, NeXT Computer, Inc.
  4. */
  5.  
  6. #import    "IXAttributeParser.h"
  7. #import    "IXPostingList.h"
  8. #import    <btree/IXPostingCursor.h>
  9. #import    <mach/cthreads.h>
  10.  
  11. @class IXStore, IXBTreeCursor;
  12.  
  13. extern IXAttributeParser *IXDefaultAttributeParser();
  14.  
  15. @interface IXRecordManager: Object 
  16. <IXBlockAndStoreAccess, IXNameAndFileAccess, IXRecordWriting, IXRecordDiscarding, IXBlobWriting, IXTransientAccess, IXTransientMessaging>
  17. {
  18.     struct mutex        _mutexLock;
  19.     id                _storeDirectory;
  20.     id                _dataRepository;
  21.     BOOL            _freeStorage;
  22.     unsigned            _blockHandle;
  23.     char            *_handleName;
  24.     IXStore            *_storageManager;
  25.     struct _NXMapTable        *_attributeNames;
  26.     struct _NXMapTable        *_attributeLists;
  27.     struct _NXMapTable        *_privateCursors;
  28.     IXBTreeCursor        *_attributeBTree;
  29. }
  30.  
  31. - removeAttributeNamed:(const char *)name;
  32. - addAttributeNamed:(const char *)name forSelector:(SEL)selector;
  33. - (BOOL)hasAttributeNamed:(const char *)name;
  34.  
  35. - (char *)attributeNames;
  36. - (IXPostingCursor *)cursorForAttributeNamed:(const char *)name;
  37. - (SEL)selectorForAttributeNamed:(const char *)name;
  38.  
  39. - (char *)classNames;
  40. - (char *)attributeNamesForClass:aClass;
  41.  
  42. - (IXPostingList *)discards;
  43. - (IXPostingList *)recordsForClass:aClass;
  44.  
  45. - setTargetClass:aClass forAttributeNamed:(const char *)name;
  46. - getTargetName:(const char **)target andVersion:(unsigned *)version 
  47.     forAttributeNamed:(const char *)name;
  48.  
  49. - getDescription:(char **)aDescription 
  50.     forAttributeNamed:(const char *)name;
  51. - setDescription:(const char *)aDescription 
  52.     forAttributeNamed:(const char *)name;
  53.  
  54. - (const char *)comparisonFormatForAttributeNamed:(const char *)name;
  55. - setComparisonFormat:(const char *)aFormat 
  56.     forAttributeNamed:(const char *)name;
  57.  
  58. - getComparator:(IXComparator **)comparator andContext:(const void **)context 
  59.     forAttributeNamed:(const char *)name;
  60. - setComparator:(IXComparator *)comparator andContext:(const void *)context 
  61.     forhibuteNamed:(const char *)name;
  62.  
  63. - (IXAttributeParser *)parserForAttributeNamed:(const char *)name;
  64. - setParser:(IXAttributeParser *)aParser 
  65.     forAttributeNamed:(const char *)name;
  66.  
  67. @end
  68.  
  69.