NPIProvider.hpp

Go to the documentation of this file.
00001 /*
00002  * NPIProvider.h
00003  *
00004  * THIS FILE IS PROVIDED UNDER THE TERMS OF THE COMMON PUBLIC LICENSE
00005  * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
00006  * CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
00007  *
00008  * You can obtain a current copy of the Common Public License from
00009  * http://oss.software.ibm.com/developerworks/opensource/license-cpl.html
00010  *
00011  * Author: Markus Mueller <markus_mueller@de.ibm.com>
00012  * Contributors:
00013  *
00014  * Description: <Some descriptive text>
00015  */
00016 #ifndef PegasusProvider_NPIProvider_h
00017 #define PegasusProvider_NPIProvider_h
00018 #include "OW_CIMOMHandleIFC.hpp"
00019 #include "OW_CIMDataType.hpp"
00020 #include "OW_CIMProperty.hpp"
00021 #include "OW_String.hpp"
00022 #include "OW_CIMValue.hpp"
00023 #include "OW_CIMClass.hpp"
00024 #include "OW_CIMInstance.hpp"
00025 #include "OW_CIMObjectPath.hpp"
00026 #include "OW_CIMParameter.hpp"
00027 #include "OW_Array.hpp"
00028 #include "OW_CIMBase.hpp"
00029 #include "OW_ProviderEnvironmentIFC.hpp"
00030 #include <stdlib.h>
00031 #include "npi.h"
00032 
00033 namespace OW_NAMESPACE
00034 {
00035 
00036 typedef struct {
00037       char* operationContext;
00038    CIMOMHandleIFCRef _cimomhandle;
00039    String _nameSpace;
00040 } NPIenv;
00041 #define PROVIDER_ENTRY \
00042 _npiHandle->thisObject = (void *)createEnv(_repository, nameSpace); \
00043 ((NPIenv *)_npiHandle->thisObject)->operationContext = getOperationContext(); \
00044 handler.processing();
00045 #define PROVIDER_EXIT \
00046 deleteEnv((NPIenv *)_npiHandle->thisObject); \
00047 handler.complete();
00048 typedef Array<char *> charVect;
00049 
00050 } // end namespace OW_NAMESPACE
00051 
00052 #endif /* PegasusProvider_NPIProvider_h */

Generated on Thu Feb 9 08:47:49 2006 for openwbem by  doxygen 1.4.6