Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
p6enumstr.h
Go to the documentation of this file.
1 
11 #ifndef P6ENUMSTR_H__
12 #define P6ENUMSTR_H__ 1
13 
14 #include "p6com.h"
15 
16 
17 namespace P6R {
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
28 interface p6IEnumStr : public p6ICom
29 {
46  P6COMMETHOD next( P6BSTR* pString ) = 0;
47 
56  P6COMMETHOD reset() = 0;
57 
69  P6COMMETHOD count( P6UINT32* pNumber ) = 0;
70 };
71 // {0852289E-AFC2-4319-847C-23C191F28ABE}
72 #define IF_p6IEnumStr {0x852289e,0xafc2,0x4319,{0x84,0x7c,0x23,0xc1,0x91,0xf2,0x8a,0xbe}}
73 
74 // {8448DFAA-B260-42de-B3F8-4EDEE954C55A}
75 #define COMP_p6EnumStr {0x8448dfaa,0xb260,0x42de,{0xb3,0xf8,0x4e,0xde,0xe9,0x54,0xc5,0x5a}}
76 
77 
78 
89 const P6ENUMSTRFLAGS P6STRFLG_NOFLAGS = 0x00000000;
90 const P6ENUMSTRFLAGS P6STRFLG_TRACE_BASIC = 0x00000001;
91 
99 {
111  P6COMMETHOD initialize( P6ENUMSTRFLAGS flags ) = 0;
112 
124  P6COMMETHOD addString( P6NCSTR item ) = 0;
125 };
126 
127 // {C5BCB7A3-2C8B-4709-A522-983BB4980E1B}
128 #define IF_p6IEnumStrInit {0xc5bcb7a3,0x2c8b,0x4709,{0xa5,0x22,0x98,0x3b,0xb4,0x98,0xe,0x1b}}
129 
130 
131 #ifdef __cplusplus
132 }
133 #endif
134 
135 } // namespace
136 
137 
138 #endif
139 
140 
A convience structure to pass around a narrow string along with its length.
Definition: p6types.h:215
unsigned int P6UINT32
Definition: p6types.h:40
const P6ENUMSTRFLAGS P6STRFLG_NOFLAGS
Definition: p6enumstr.h:89
P6UINT32 P6ENUMSTRFLAGS
P6ENUMSTRFLAGS.
Definition: p6enumstr.h:88
virtual P6R::P6ERR addString(P6NCSTR item)=0
Add a copy of the string passed in by the parameter 'item' to the enumerator.
This interface is used by the component's creator inorder to add strings into the enumerator during t...
Definition: p6enumstr.h:98
The base interface all [p6]COM components must derive from and implement.
Definition: p6comdef.h:96
virtual P6R::P6ERR count(P6UINT32 *pNumber)=0
Return to the caller the total number of items stored in the enumerator.
virtual P6R::P6ERR next(P6BSTR *pString)=0
Iterate though one or more returned strings.
const P6ENUMSTRFLAGS P6STRFLG_TRACE_BASIC
Definition: p6enumstr.h:90
Binary string.
Definition: p6types.h:154
This interface is a general purpose string enumerator.
Definition: p6enumstr.h:28
virtual P6R::P6ERR initialize(P6ENUMSTRFLAGS flags)=0
Sets up the component to run properly and must be called before any other method. ...
virtual P6R::P6ERR reset()=0
This method is used to re-start the enumerator at the beginning.
#define P6COMMETHOD
Definition: p6types.h:872
P6COM definitions and interfaces.