45 #ifndef COMMONCPP_OBJECT_H_
46 #define COMMONCPP_OBJECT_H_
48 #ifndef COMMONCPP_CONFIG_H_
49 #include <commoncpp/config.h>
54 class __EXPORT MapObject;
55 class __EXPORT MapIndex;
92 virtual void *getObject(
void) = 0;
117 virtual void enterLock(
void);
123 virtual void leaveLock(
void);
150 inline void *operator*()
const
151 {
return getObject();};
153 inline void *operator->()
const
154 {
return getObject();};
156 void *getObject(
void)
const;
158 bool operator!()
const;
174 {nextObject = NULL;};
206 {
return nextObject;};
233 {nextObject = prevObject = NULL;};
237 virtual void enterLock(
void);
239 virtual void leaveLock(
void);
293 {
return nextObject;};
301 {
return prevObject;};
311 virtual void insert(
LinkedDouble& obj, InsertMode position = modeAtLast);
316 virtual void detach(
void);
365 virtual unsigned getIndex(
const char *
id);
372 inline unsigned getRange(
void)
380 inline unsigned getSize(
void)
390 void *getObject(
const char *
id);
504 void* operator*()
const
505 {
return (
void*)thisObject; }
535 {
return thisObject == theIndex.thisObject; };
537 bool operator!=(
const MapIndex& theIndex)
const
538 {
return !(*
this == theIndex); };
547 {
return thisObject == theObject; };
549 bool operator!=(
const MapObject* theObject)
const
550 {
return !(*
this == theObject); };
567 const char *idObject;