Alex Bikfalvi
SimStream Documentation
StreamMessageBootPushMultiResponse.h
00001 #pragma once 00002 00003 #include "StreamMessage.h" 00004 #include "Address.h" 00005 00006 class CStreamMessageBootPushMultiResponse : public CStreamMessage 00007 { 00008 public: 00009 enum EResponseType 00010 { 00011 STREAM = 0, 00012 LAYER = 1 00013 }; 00014 00015 private: 00016 EResponseType type; 00017 __uint32 layer; 00018 __uint32 layers; 00019 00020 __uint32 count[BOOT_MAX_LAYERS]; 00021 CAddress hosts[BOOT_MAX_LAYERS][BOOT_MAX_HOSTS]; 00022 00023 public: 00024 CStreamMessageBootPushMultiResponse( 00025 __uint32 stream, 00026 __uint32 layers 00027 ); 00028 CStreamMessageBootPushMultiResponse( 00029 __uint32 stream, 00030 __uint32 layer, 00031 __uint32 count 00032 ); 00033 virtual ~CStreamMessageBootPushMultiResponse() { } 00034 00035 inline EResponseType ResponseType() { return this->type; } 00036 inline __uint32 Layer() { return this->layer; } 00037 00038 inline __uint32 Count(__uint32 layer) { assert(layer < this->layers); return this->count[layer]; } 00039 void Set(__uint32 layer, __uint32 count); 00040 inline CAddress& Host(__uint32 layer, __uint32 index) { assert(layer < this->layers); assert(index < this->count[layer]); return this->hosts[layer][index]; } 00041 00042 virtual CPacket* Copy(); 00043 };
Last updated: February 8, 2011