1*48a54d36SAndroid Build Coastguard Worker /* -*- Mode: C; tab-width: 4 -*- 2*48a54d36SAndroid Build Coastguard Worker * 3*48a54d36SAndroid Build Coastguard Worker * Copyright (c) 2009 Apple Computer, Inc. All rights reserved. 4*48a54d36SAndroid Build Coastguard Worker * 5*48a54d36SAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 6*48a54d36SAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 7*48a54d36SAndroid Build Coastguard Worker * You may obtain a copy of the License at 8*48a54d36SAndroid Build Coastguard Worker * 9*48a54d36SAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 10*48a54d36SAndroid Build Coastguard Worker * 11*48a54d36SAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 12*48a54d36SAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 13*48a54d36SAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14*48a54d36SAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 15*48a54d36SAndroid Build Coastguard Worker * limitations under the License. 16*48a54d36SAndroid Build Coastguard Worker */ 17*48a54d36SAndroid Build Coastguard Worker 18*48a54d36SAndroid Build Coastguard Worker 19*48a54d36SAndroid Build Coastguard Worker 20*48a54d36SAndroid Build Coastguard Worker #ifndef _StringServices_h 21*48a54d36SAndroid Build Coastguard Worker 22*48a54d36SAndroid Build Coastguard Worker #define _StringServices_h 23*48a54d36SAndroid Build Coastguard Worker 24*48a54d36SAndroid Build Coastguard Worker 25*48a54d36SAndroid Build Coastguard Worker 26*48a54d36SAndroid Build Coastguard Worker #include <atlbase.h> 27*48a54d36SAndroid Build Coastguard Worker 28*48a54d36SAndroid Build Coastguard Worker #include <vector> 29*48a54d36SAndroid Build Coastguard Worker 30*48a54d36SAndroid Build Coastguard Worker #include <string> 31*48a54d36SAndroid Build Coastguard Worker 32*48a54d36SAndroid Build Coastguard Worker 33*48a54d36SAndroid Build Coastguard Worker 34*48a54d36SAndroid Build Coastguard Worker 35*48a54d36SAndroid Build Coastguard Worker 36*48a54d36SAndroid Build Coastguard Worker extern BOOL 37*48a54d36SAndroid Build Coastguard Worker 38*48a54d36SAndroid Build Coastguard Worker BSTRToUTF8 39*48a54d36SAndroid Build Coastguard Worker 40*48a54d36SAndroid Build Coastguard Worker ( 41*48a54d36SAndroid Build Coastguard Worker 42*48a54d36SAndroid Build Coastguard Worker BSTR inString, 43*48a54d36SAndroid Build Coastguard Worker 44*48a54d36SAndroid Build Coastguard Worker std::string & outString 45*48a54d36SAndroid Build Coastguard Worker 46*48a54d36SAndroid Build Coastguard Worker ); 47*48a54d36SAndroid Build Coastguard Worker 48*48a54d36SAndroid Build Coastguard Worker 49*48a54d36SAndroid Build Coastguard Worker 50*48a54d36SAndroid Build Coastguard Worker 51*48a54d36SAndroid Build Coastguard Worker 52*48a54d36SAndroid Build Coastguard Worker extern BOOL 53*48a54d36SAndroid Build Coastguard Worker 54*48a54d36SAndroid Build Coastguard Worker UTF8ToBSTR 55*48a54d36SAndroid Build Coastguard Worker 56*48a54d36SAndroid Build Coastguard Worker ( 57*48a54d36SAndroid Build Coastguard Worker 58*48a54d36SAndroid Build Coastguard Worker const char * inString, 59*48a54d36SAndroid Build Coastguard Worker 60*48a54d36SAndroid Build Coastguard Worker CComBSTR & outString 61*48a54d36SAndroid Build Coastguard Worker 62*48a54d36SAndroid Build Coastguard Worker ); 63*48a54d36SAndroid Build Coastguard Worker 64*48a54d36SAndroid Build Coastguard Worker 65*48a54d36SAndroid Build Coastguard Worker 66*48a54d36SAndroid Build Coastguard Worker 67*48a54d36SAndroid Build Coastguard Worker 68*48a54d36SAndroid Build Coastguard Worker extern BOOL 69*48a54d36SAndroid Build Coastguard Worker 70*48a54d36SAndroid Build Coastguard Worker ByteArrayToVariant 71*48a54d36SAndroid Build Coastguard Worker 72*48a54d36SAndroid Build Coastguard Worker ( 73*48a54d36SAndroid Build Coastguard Worker 74*48a54d36SAndroid Build Coastguard Worker const void * inArray, 75*48a54d36SAndroid Build Coastguard Worker 76*48a54d36SAndroid Build Coastguard Worker size_t inArrayLen, 77*48a54d36SAndroid Build Coastguard Worker 78*48a54d36SAndroid Build Coastguard Worker VARIANT * outVariant 79*48a54d36SAndroid Build Coastguard Worker 80*48a54d36SAndroid Build Coastguard Worker ); 81*48a54d36SAndroid Build Coastguard Worker 82*48a54d36SAndroid Build Coastguard Worker 83*48a54d36SAndroid Build Coastguard Worker 84*48a54d36SAndroid Build Coastguard Worker 85*48a54d36SAndroid Build Coastguard Worker 86*48a54d36SAndroid Build Coastguard Worker extern BOOL 87*48a54d36SAndroid Build Coastguard Worker 88*48a54d36SAndroid Build Coastguard Worker VariantToByteArray 89*48a54d36SAndroid Build Coastguard Worker 90*48a54d36SAndroid Build Coastguard Worker ( 91*48a54d36SAndroid Build Coastguard Worker 92*48a54d36SAndroid Build Coastguard Worker VARIANT * inVariant, 93*48a54d36SAndroid Build Coastguard Worker 94*48a54d36SAndroid Build Coastguard Worker std::vector< BYTE > & outArray 95*48a54d36SAndroid Build Coastguard Worker 96*48a54d36SAndroid Build Coastguard Worker ); 97*48a54d36SAndroid Build Coastguard Worker 98*48a54d36SAndroid Build Coastguard Worker 99*48a54d36SAndroid Build Coastguard Worker 100*48a54d36SAndroid Build Coastguard Worker 101*48a54d36SAndroid Build Coastguard Worker 102*48a54d36SAndroid Build Coastguard Worker #endif