cmpi
CmpiProviderBase.h
Go to the documentation of this file.
1 /*
2  *
3  * $Id: CmpiProviderBase.h,v 1.3 2008/07/09 19:36:59 tyreld Exp $
4  *
5  * (C) Copyright IBM Corp. 2003, 2005, 2008
6  *
7  * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE
8  * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
9  * CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
10  *
11  * You can obtain a current copy of the Eclipse Public License from
12  * http://www.opensource.org/licenses/eclipse-1.0.txt
13  *
14  * Author: Adrian Schuur <schuur@de.ibm.com>
15  * Contributors: Heidi Neumann, heidineu@de.ibm.com
16  * Angel Nunez Mencias, anunez@de.ibm.com
17  * Viktor Mihajlovski, mihajlov@de.ibm.com
18  *
19  * Description: CMPI ProviderBase Helper Definitions
20  *
21  */
22 
23 #ifndef _CmpiProviderBase_h_
24 #define _CmpiProviderBase_h_
25 
26 #include "Linkage.h"
27 
28 class CmpiBaseMI;
29 
31 public:
34  CmpiBaseMI* getBaseMI();
35  void setBaseMI(CmpiBaseMI* aBaseMI);
36  void incUseCount();
37  int decUseCount();
38 private:
39  friend class CmpiArgs;
40  friend class CmpiArray;
41  friend class CmpiDateTime;
42  friend class CmpiInstance;
43  friend class CmpiObject;
44  friend class CmpiObjectPath;
45  friend class CmpiStatus;
46  friend class CmpiString;
47  friend class CmpiBaseMI;
48  // per provider CmpiBaseMI
50  int useCount;
51  // only for usage inside CMPI CPP library
52  static CMPIBroker *getBroker();
53  static void setBroker(const CMPIBroker *mb);
54 };
55 
56 #endif
57 
58 
Definition: CmpiArgs.h:39
Definition: CmpiDateTime.h:38
Definition: CmpiProviderBase.h:30
Definition: cmpift.h:950
Definition: CmpiBaseMI.h:39
Definition: CmpiStatus.h:35
Definition: CmpiString.h:49
int useCount
Definition: CmpiProviderBase.h:50
CmpiBaseMI * baseMI
Definition: CmpiProviderBase.h:49
Definition: CmpiArray.h:118
Definition: CmpiInstance.h:42
Definition: CmpiObjectPath.h:42
Definition: CmpiObject.h:42
#define CMPI_PROVIDER_LINKAGE
Definition: Linkage.h:28