CmpiArgs.h

Go to the documentation of this file.
00001 
00002 /*
00003  *
00004  * CmpiInstance.h
00005  *
00006  * (C) Copyright IBM Corp. 2003
00007  *
00008  * THIS FILE IS PROVIDED UNDER THE TERMS OF THE COMMON PUBLIC LICENSE
00009  * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
00010  * CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
00011  *
00012  * You can obtain a current copy of the Common Public License from
00013  * http://oss.software.ibm.com/developerworks/opensource/license-cpl.html
00014  *
00015  * Author:        Adrian Schuur <schuur@de.ibm.com>
00016  * Contributors:
00017  *
00018  * Description: CMPI C++ Instance wrapper
00019  *
00020  */
00021 
00022 #ifndef _CmpiArgs_h_
00023 #define _CmpiArgs_h_
00024 
00025 #include "OW_config.h"
00026 #include "cmpidt.h"
00027 #include "cmpift.h"
00028 
00029 #include "CmpiData.h"
00030 #include "CmpiObject.h"
00031 #include "CmpiProviderBase.h"
00032 
00037 class CmpiArgs : public CmpiObject {
00038    friend class CmpiBroker;
00039    friend class CmpiMethodMI;
00040   protected:
00041 
00044    inline CmpiArgs(CMPIArgs* enc)
00045       { this->enc=enc; }
00046 
00049    inline CMPIArgs *getEnc() const
00050       { return (CMPIArgs*)enc; }
00051    void *makeArgs(CMPIBroker* mb);
00052   private:
00053   public:
00054 
00057    inline CmpiArgs() {
00058       enc=makeArgs(CmpiProviderBase::getBroker());
00059    }
00060 
00065    unsigned int getArgCount();
00066 
00072    CmpiData getArg(const char* name);
00073 
00080    CmpiData getArg(const int index, CmpiString *name=NULL);
00081 
00087    void setArg(const char* name, CmpiData& data);
00088 };
00089 
00090 #endif

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