00001 /* ********************************************************** 00002 * Copyright 2007 VMware, Inc. All rights reserved. -- VMware Confidential 00003 * **********************************************************/ 00004 00005 #ifndef _VMCF_OBJECT_IMPL_H_ 00006 #define _VMCF_OBJECT_IMPL_H_ 00007 00018 #include <time.h> 00019 #include "VMCFCoreImpl.h" 00020 #include "VMCFClass.h" 00021 00022 00025 typedef 00026 VMCFCore_CFObject 00027 (*VMCFCore_CFObject_CreateFn)(CORBA_string name, 00028 VMCFServer server, 00029 CORBA_boolean bind, 00030 VMCFCore_CFObject parent, 00031 CORBA_Environment *env); 00032 00033 00034 /* Declare the CFObject class methods. */ 00035 VMCF_EXTERN VMCF_PROTO_ALLOC(VMCFCore_CFObject); 00036 VMCF_EXTERN VMCF_PROTO_FINI(VMCFCore_CFObject); 00037 VMCF_EXTERN VMCF_PROTO_SUBINST(VMCFCore_CFObject); 00038 00039 00040 VMCF_EXTERN CORBA_boolean 00041 VMCFCore_CFObjectImpl_lock(VMCFCore_CFObject self); 00042 00043 VMCF_EXTERN void 00044 VMCFCore_CFObjectImpl_unlock(VMCFCore_CFObject self); 00045 00046 VMCF_EXTERN VMCFServer 00047 VMCFCore_CFObjectImpl_getServer(VMCFCore_CFObject self); 00048 00049 VMCF_EXTERN VMCFCore_CFObject 00050 VMCFCore_CFObjectImpl_getParent(VMCFCore_CFObject self); 00051 00052 VMCF_EXTERN VMCFCore_CFObject 00053 VMCFCore_CFObjectImpl_addChild(VMCFCore_CFObject self, 00054 VMCFCore_CFObject child); 00055 00056 VMCF_EXTERN VMCFCore_CFObject 00057 VMCFCore_CFObjectImpl_getChild(VMCFCore_CFObject self, 00058 CORBA_string name); 00059 00060 VMCF_EXTERN CORBA_boolean 00061 VMCFCore_CFObjectImpl_removeChild(VMCFCore_CFObject self, 00062 CORBA_string name); 00063 00064 VMCF_EXTERN CORBA_unsigned_long 00065 VMCFCore_CFObjectImpl_getState(VMCFCore_CFObject self); 00066 00067 VMCF_EXTERN CORBA_unsigned_long 00068 VMCFCore_CFObjectImpl_setState(VMCFCore_CFObject self, 00069 CORBA_unsigned_long state); 00070 00071 VMCF_EXTERN time_t 00072 VMCFCore_CFObjectImpl_getLastProbeTime(VMCFCore_CFObject self); 00073 00076 #endif /* _VMCF_OBJECT_IMPL_H_*/ 00077