Safir SDK Core
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BriefResponse.h
Go to the documentation of this file.
1 #ifndef SAFIR_UTILITIES_FOREACH_BRIEFRESPONSE_H_INCLUDED
2 #define SAFIR_UTILITIES_FOREACH_BRIEFRESPONSE_H_INCLUDED
3 
8 
11 
12 #ifdef _MSC_VER
13 #ifdef DOTS_GENERATED_CPP_EXPORTS
14 #define GENERATED_API __declspec(dllexport)
15 #else
16 #define GENERATED_API __declspec(dllimport)
17 #ifdef _DEBUG
18 #pragma comment( lib, "dots_generated-Safir-cppd.lib" )
19 #else
20 #pragma comment( lib, "dots_generated-Safir-cpp.lib" )
21 #endif
22 #endif
23 #endif
24 #ifdef __GNUC__
25 #define GENERATED_API
26 #endif
27 
31 namespace Safir
32 {
36 namespace Utilities
37 {
41 namespace ForEach
42 {
43 
44  class BriefResponse; //forward declaration
45  typedef boost::shared_ptr<BriefResponse> BriefResponsePtr;
46  typedef boost::shared_ptr<const BriefResponse> BriefResponseConstPtr;
47 
50 
55  class GENERATED_API BriefResponse : public Safir::Dob::SuccessResponse
56  {
57  public:
58  //Constructors and Create routines
59  BriefResponse();
60  virtual Safir::Dob::Typesystem::ObjectPtr Clone() const;
61  static BriefResponsePtr Create();
62 
63  //NumberOfSuccessResponses
64  static Safir::Dob::Typesystem::MemberIndex NumberOfSuccessResponsesMemberIndex();
70 
71 
72  //NumberOfErrorResponses
73  static Safir::Dob::Typesystem::MemberIndex NumberOfErrorResponsesMemberIndex();
79 
80 
81  //NumberOfResponses
82  static Safir::Dob::Typesystem::MemberIndex NumberOfResponsesMemberIndex();
88 
89 
91  static const Safir::Dob::Typesystem::TypeId ClassTypeId = -1663894431409180801LL;
92 
93  //Type id for BriefResponse
94  virtual Safir::Dob::Typesystem::TypeId GetTypeId() const {return ClassTypeId;}
95 
96  //Check if anything in the object has change flags set
97  virtual bool IsChanged();
98 
99  //Recursively set all change flags in the object
100  virtual void SetChanged(const bool changed);
101 
102 
103  //Reflection part (Don't use unless you really know what you're doing!!)
106  virtual const Safir::Dob::Typesystem::ContainerBase & GetMember(const Safir::Dob::Typesystem::MemberIndex member,
107  const Safir::Dob::Typesystem::ArrayIndex index) const;
108 
109  virtual Safir::Dob::Typesystem::Int32 CalculateBlobSize() const;
110  virtual void WriteToBlob(char * blob, char * & beginningOfUnused) const;
111  explicit BriefResponse(char const * const blob);
112 
113  private:
114 
115 #ifdef _MSC_VER
116 #pragma warning (push)
117 #pragma warning (disable : 4251)
118 #endif
119 
120  Safir::Dob::Typesystem::Int32Container m_NumberOfSuccessResponsesMember;
121  Safir::Dob::Typesystem::Int32Container m_NumberOfErrorResponsesMember;
122  Safir::Dob::Typesystem::Int32Container m_NumberOfResponsesMember;
123 
124 #ifdef _MSC_VER
125 #pragma warning (pop)
126 #endif
127  };
128 
129 } // ForEach
130 } // Utilities
131 } // Safir
132 
133 #endif
134 
boost::shared_ptr< BriefResponse > BriefResponsePtr
Definition: BriefResponse.h:44
Brief response for a ForEach service request.
Definition: BriefResponse.h:55
boost::shared_ptr< const BriefResponse > BriefResponseConstPtr
Definition: BriefResponse.h:46
Container for base types.
Definition: ValueContainers.h:60
The baseclass for all success responses.
Definition: SuccessResponse.h:49
virtual Safir::Dob::Typesystem::TypeId GetTypeId() const
Get the type id of this object.
Definition: BriefResponse.h:94
Definition: ContainerProxies.h:38
DotsC_TypeId TypeId
A unique type identifier.
Definition: Dob/Typesystem/Defs.h:221
Template class for all containers of automatically generated DOB objects.
Definition: ObjectContainer.h:185
boost::shared_ptr< Object > ObjectPtr
A smart pointer to an Object.
Definition: Object.h:41
DotsC_ArrayIndex ArrayIndex
Index into an array.
Definition: Dob/Typesystem/Defs.h:249
Base class for all Containers.
Definition: ContainerBase.h:41
Safir::Dob::Typesystem::ArrayContainer< BriefResponseContainer > BriefResponseContainerArray
Definition: BriefResponse.h:49
Safir::Dob::Typesystem::ObjectContainerImpl< BriefResponse > BriefResponseContainer
Definition: BriefResponse.h:48
STL container for arrays of DOB-containers.
Definition: ArrayContainer.h:58
DotsC_Int32 Int32
32 bit integer type.
Definition: Dob/Typesystem/Defs.h:69
DotsC_MemberIndex MemberIndex
The index of a member in an object.
Definition: Dob/Typesystem/Defs.h:240
static bool IsChanged(const ContainerBase &container)
Check if a container is changed.
Definition: ContainerBase.h:134