(file) Return to BinaryStreamer.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

  1 karl  1.9 //%2006////////////////////////////////////////////////////////////////////////
  2 schuur 1.1 //
  3 karl   1.4 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4            // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5            // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6 schuur 1.1 // IBM Corp.; EMC Corporation, The Open Group.
  7 karl   1.4 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8            // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9 karl   1.6 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 karl   1.9 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12            // EMC Corporation; Symantec Corporation; The Open Group.
 13 schuur 1.1 //
 14            // Permission is hereby granted, free of charge, to any person obtaining a copy
 15            // of this software and associated documentation files (the "Software"), to
 16            // deal in the Software without restriction, including without limitation the
 17            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18            // sell copies of the Software, and to permit persons to whom the Software is
 19            // furnished to do so, subject to the following conditions:
 20 karl   1.4 // 
 21 schuur 1.1 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22            // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24            // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27            // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29            //
 30            //==============================================================================
 31            //
 32            //%/////////////////////////////////////////////////////////////////////////////
 33            
 34            #ifndef BinaryStreamer_h
 35            #define BinaryStreamer_h
 36            
 37 mike   1.10 #include <Pegasus/Common/Config.h>
 38 jim.wunderlich 1.7  #include <Pegasus/Common/ObjectStreamer.h>
 39                     #include <Pegasus/Common/CIMProperty.h>
 40                     #include <Pegasus/Common/CIMQualifier.h>
 41                     #include <Pegasus/Common/CIMMethod.h>
 42                     #include <Pegasus/Common/CIMFlavor.h>
 43                     #include <Pegasus/Common/CIMScope.h>
 44                     
 45                     #define BINREP_MARKER 0x11
 46 schuur         1.1  
 47                     PEGASUS_NAMESPACE_BEGIN
 48                     
 49 kumpf          1.11 class PEGASUS_COMMON_LINKAGE BinaryStreamer : public ObjectStreamer
 50 jim.wunderlich 1.7  {
 51                     public:
 52                     
 53                         BinaryStreamer() { }
 54                     
 55                         ~BinaryStreamer() { }
 56                     
 57 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 58 mike           1.8      void encode(Buffer& out, const CIMClass& x);
 59 jim.wunderlich 1.7  
 60 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 61 mike           1.8      void encode(Buffer& out, const CIMInstance& x);
 62 jim.wunderlich 1.7  
 63 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 64 mike           1.8      void encode(Buffer& out, const CIMQualifierDecl& x);
 65 jim.wunderlich 1.7  
 66 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 67 mike           1.8      void decode(const Buffer& in, unsigned int pos, CIMClass& x);
 68 jim.wunderlich 1.7  
 69 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 70 mike           1.8      void decode(const Buffer& in, unsigned int pos, CIMInstance& x);
 71 jim.wunderlich 1.7  
 72 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 73 mike           1.8      void decode(const Buffer& in, unsigned int pos, CIMQualifierDecl& x);
 74 schuur         1.1  
 75                     public:
 76                     
 77 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 78 jim.wunderlich 1.7      static void _unpackQualifier(
 79 kumpf          1.11         const Buffer& in, Uint32& pos, CIMQualifier& x);
 80 schuur         1.1  
 81 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 82 mike           1.8      static void _packQualifier(Buffer& out, const CIMQualifier& x);
 83 schuur         1.1  
 84 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 85 jim.wunderlich 1.7      static void _unpackProperty(
 86 kumpf          1.11         const Buffer& in, Uint32& pos, CIMProperty& x);
 87 david.dillard  1.5  
 88 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 89 jim.wunderlich 1.7      static void _unpackMethod(
 90 kumpf          1.11         const Buffer& in, Uint32& pos, CIMMethod& x);
 91 schuur         1.1  
 92                     private:
 93                     
 94 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 95 mike           1.8      static void _packName(Buffer& out, const CIMName& x);
 96 jim.wunderlich 1.7  
 97 mike           1.10     PEGASUS_HIDDEN_LINKAGE
 98 mike           1.8      static void _unpackName(const Buffer& in, Uint32& pos, CIMName& x);
 99 jim.wunderlich 1.7  
100 mike           1.10     PEGASUS_HIDDEN_LINKAGE
101 mike           1.8      static void _packValue(Buffer& out, const CIMValue& x);
102 schuur         1.1  
103 mike           1.10     PEGASUS_HIDDEN_LINKAGE
104 mike           1.8      static void _unpackValue(const Buffer& in, Uint32& pos, CIMValue& x);
105 jim.wunderlich 1.7  
106 mike           1.10     PEGASUS_HIDDEN_LINKAGE
107 mike           1.8      static void _packProperty(Buffer& out, const CIMProperty& x);
108 jim.wunderlich 1.7  
109 mike           1.10     PEGASUS_HIDDEN_LINKAGE
110 mike           1.8      static void _packParameter(Buffer& out, const CIMParameter& x);
111 jim.wunderlich 1.7  
112 mike           1.10     PEGASUS_HIDDEN_LINKAGE
113 jim.wunderlich 1.7      static void _unpackParameter(
114 kumpf          1.11         const Buffer& in, Uint32& pos, CIMParameter& x);
115 jim.wunderlich 1.7  
116 mike           1.10     PEGASUS_HIDDEN_LINKAGE
117 mike           1.8      static void _packParameters(Buffer& out, CIMMethodRep* rep);
118 jim.wunderlich 1.7  
119 mike           1.10     PEGASUS_HIDDEN_LINKAGE
120 jim.wunderlich 1.7      static void _unpackParameters(
121 kumpf          1.11         const Buffer& in, Uint32& pos, CIMMethod& x);
122 jim.wunderlich 1.7  
123 mike           1.10     PEGASUS_HIDDEN_LINKAGE
124 mike           1.8      static void _packMethod(Buffer& out, const CIMMethod& x);
125 jim.wunderlich 1.7  
126 mike           1.10     PEGASUS_HIDDEN_LINKAGE
127 mike           1.8      static void _packObjectPath(Buffer& out, const CIMObjectPath& x);
128 jim.wunderlich 1.7  
129 mike           1.10     PEGASUS_HIDDEN_LINKAGE
130 jim.wunderlich 1.7      static void _unpackObjectPath(
131 kumpf          1.11         const Buffer& in, Uint32& pos, CIMObjectPath& x);
132 jim.wunderlich 1.7  
133 mike           1.10     PEGASUS_HIDDEN_LINKAGE
134 mike           1.8      static void _packProperties(Buffer& out, CIMObjectRep* rep);
135 schuur         1.1  
136 mike           1.10     PEGASUS_HIDDEN_LINKAGE
137 mike           1.8      static void _packMethods(Buffer& out, CIMClassRep* rep);
138 schuur         1.1  
139 mike           1.10     PEGASUS_HIDDEN_LINKAGE
140 mike           1.8      static void _packScope(Buffer& out, const CIMScope& x);
141 schuur         1.1  
142 mike           1.10     PEGASUS_HIDDEN_LINKAGE
143 jim.wunderlich 1.7      static void _unpackScope(
144 kumpf          1.11         const Buffer& in, Uint32& pos, CIMScope& x);
145 schuur         1.1  
146 mike           1.10     PEGASUS_HIDDEN_LINKAGE
147 mike           1.8      static void _packFlavor(Buffer& out, const CIMFlavor& x);
148 schuur         1.1  
149 mike           1.10     PEGASUS_HIDDEN_LINKAGE
150 jim.wunderlich 1.7      static void _unpackFlavor(
151 kumpf          1.11         const Buffer& in, Uint32& pos, CIMFlavor& x);
152 schuur         1.1  
153 mike           1.10     PEGASUS_HIDDEN_LINKAGE
154 mike           1.8      static void _packType(Buffer& out, const CIMType& x);
155 schuur         1.1  
156 mike           1.10     PEGASUS_HIDDEN_LINKAGE
157 jim.wunderlich 1.7      static void _unpackType(
158 kumpf          1.11         const Buffer& in, Uint32& pos, CIMType& x);
159 schuur         1.1  };
160                     
161 mike           1.10 class PEGASUS_COMMON_LINKAGE BinException : public Exception
162 jim.wunderlich 1.7  {
163                     public:
164                         BinException(const String& message) : Exception(message) { }
165 schuur         1.1  };
166                     
167                     PEGASUS_NAMESPACE_END
168                     
169                     #endif

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2