cmpi
CmpiArray.h
Go to the documentation of this file.
1/*
2 *
3 * $Id: CmpiArray.h,v 1.4 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 *
18 * Description: CMPI Array Definitions
19 *
20 */
21
22#ifndef _CmpiArray_h_
23#define _CmpiArray_h_
24
25#include "cmpidt.h"
26#include "CmpiString.h"
27
28#include "Linkage.h"
29#include "CmpiObjectPath.h"
30#include "CmpiInstance.h"
31#include "CmpiBaseMI.h"
32#include "CmpiData.h"
33
34class CmpiArray;
35class CmpiInstance;
36class CmpiData;
37
39 friend class CmpiArray;
40 const CmpiArray &ar;
42 CmpiArrayIdx(const CmpiArray &a, CMPICount i);
43public:
45 CmpiData getData() const;
46
49 operator CmpiString() const;
52 operator const char* () const;
55 operator CmpiDateTime() const;
58 operator CmpiInstance() const;
61 operator CmpiObjectPath() const;
64 operator CMPISint8() const;
67 operator CMPISint16() const;
70 operator CMPISint32() const;
73 operator CMPISint64() const;
74
77 operator unsigned char() const;
80 operator unsigned short() const;
83 operator CMPIUint32() const;
86 operator CMPIUint64() const;
89 operator CMPIReal32() const;
92 operator CMPIReal64() const;
93
94};
95
96
117
118class CmpiArray : public CmpiObject {
119 friend class CmpiArrayIdx;
120 friend class CmpiData;
121 friend class CmpiEnumeration;
122 void operator=(int x);
123
126 CMPIArray *getEnc() const;
127 void *makeArray(CMPIBroker *mb,CMPICount max, CMPIType type);
128 CmpiArray(CMPIArray *arr);
129public:
130 CmpiArray(CMPICount max, CMPIType type);
131 CmpiArray();
132 CMPICount size() const;
133 CmpiArrayIdx operator[](int idx) const;
134};
135
136#endif
137
138
139
#define CMPI_PROVIDER_LINKAGE
Definition Linkage.h:28
CmpiArrayIdx(const CmpiArray &a, CMPICount i)
Definition CmpiImpl.cpp:734
const CmpiArray & ar
Definition CmpiArray.h:40
CMPICount idx
Definition CmpiArray.h:41
friend class CmpiArray
Definition CmpiArray.h:39
CmpiData getData() const
Definition CmpiImpl.cpp:750
CmpiArrayIdx & operator=(const CmpiData &)
Definition CmpiImpl.cpp:739
Definition CmpiArray.h:118
CmpiArray(CMPIArray *arr)
Definition CmpiImpl.cpp:695
CMPIArray * getEnc() const
Definition CmpiImpl.cpp:691
CmpiArray()
Definition CmpiImpl.cpp:703
CMPICount size() const
Definition CmpiImpl.cpp:720
friend class CmpiData
Definition CmpiArray.h:120
void * makeArray(CMPIBroker *mb, CMPICount max, CMPIType type)
Definition CmpiImpl.cpp:713
CmpiArrayIdx operator[](int idx) const
Definition CmpiImpl.cpp:709
friend class CmpiEnumeration
Definition CmpiArray.h:121
friend class CmpiArrayIdx
Definition CmpiArray.h:119
void operator=(int x)
Definition CmpiImpl.cpp:706
Definition CmpiData.h:52
Definition CmpiDateTime.h:38
Definition CmpiInstance.h:42
Definition CmpiObjectPath.h:42
CmpiObject()
Definition CmpiImpl.cpp:1684
Definition CmpiString.h:49
unsigned short CMPIType
Definition cmpidt.h:282
float CMPIReal32
Definition cmpidt.h:237
signed int CMPISint32
Definition cmpidt.h:231
unsigned int CMPICount
Definition cmpidt.h:138
struct _CMPIArray CMPIArray
Definition cmpidt.h:165
double CMPIReal64
Definition cmpidt.h:238
unsigned long long CMPIUint64
Definition cmpidt.h:225
short CMPISint16
Definition cmpidt.h:230
unsigned int CMPIUint32
Definition cmpidt.h:223
struct _CMPIBroker CMPIBroker
Definition cmpidt.h:156
signed char CMPISint8
Definition cmpidt.h:229
long long CMPISint64
Definition cmpidt.h:233