adding client/server prototype
This commit is contained in:
@@ -91,12 +91,12 @@ struct composed_message : public generic_message<Type::COMPOSED_MESSAGE>
|
||||
|
||||
struct vec2
|
||||
{
|
||||
float x,y;
|
||||
int x,y;
|
||||
};
|
||||
|
||||
struct vec3
|
||||
{
|
||||
float x,y,z;
|
||||
int x,y,z;
|
||||
};
|
||||
|
||||
struct draw_rectangle : public generic_message<Type::DRAW_RECTANGLE>
|
||||
@@ -126,42 +126,42 @@ struct draw_pixel : public generic_message<Type::DRAW_PIXEL>
|
||||
vec3 color;
|
||||
};
|
||||
|
||||
uint32_t get_size(Type type)
|
||||
{
|
||||
static std::map<Type, uint32_t> type_map{};
|
||||
|
||||
//initalizes map on first run
|
||||
static bool run_once = [&](){
|
||||
type_map.emplace(Type::DRAW_PIXEL, sizeof(draw_pixel));
|
||||
type_map.emplace(Type::DRAW_RECTANGLE, sizeof(draw_rectangle));
|
||||
type_map.emplace(Type::COMPOSED_MESSAGE, sizeof(composed_message));
|
||||
return true;
|
||||
}();
|
||||
|
||||
return type_map[type];
|
||||
}
|
||||
//uint32_t get_size(Type type)
|
||||
//{
|
||||
// static std::map<Type, uint32_t> type_map{};
|
||||
//
|
||||
// //initalizes map on first run
|
||||
// static bool run_once = [&](){
|
||||
// type_map.emplace(Type::DRAW_PIXEL, sizeof(draw_pixel));
|
||||
// type_map.emplace(Type::DRAW_RECTANGLE, sizeof(draw_rectangle));
|
||||
// type_map.emplace(Type::COMPOSED_MESSAGE, sizeof(composed_message));
|
||||
// return true;
|
||||
// }();
|
||||
//
|
||||
// return type_map[type];
|
||||
//}
|
||||
|
||||
|
||||
generic_message_base* get_object(Type type, generic_message_base* msg)
|
||||
{
|
||||
switch(type)
|
||||
{
|
||||
case Type::COMPOSED_MESSAGE:
|
||||
{
|
||||
return reinterpret_cast<composed_message*>(msg);
|
||||
}
|
||||
case Type::DRAW_RECTANGLE:
|
||||
{
|
||||
return reinterpret_cast<draw_rectangle*>(msg);
|
||||
}
|
||||
case Type::DRAW_PIXEL:
|
||||
{
|
||||
return reinterpret_cast<draw_pixel*>(msg);
|
||||
}
|
||||
default:
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
//generic_message_base* get_object(Type type, generic_message_base* msg)
|
||||
//{
|
||||
// switch(type)
|
||||
// {
|
||||
// case Type::COMPOSED_MESSAGE:
|
||||
// {
|
||||
// return reinterpret_cast<composed_message*>(msg);
|
||||
// }
|
||||
// case Type::DRAW_RECTANGLE:
|
||||
// {
|
||||
// return reinterpret_cast<draw_rectangle*>(msg);
|
||||
// }
|
||||
// case Type::DRAW_PIXEL:
|
||||
// {
|
||||
// return reinterpret_cast<draw_pixel*>(msg);
|
||||
// }
|
||||
// default:
|
||||
// return nullptr;
|
||||
// }
|
||||
//}
|
||||
|
||||
//template<Type T>
|
||||
//auto* get_object(generic_message_base* msg)
|
||||
|
||||
Reference in New Issue
Block a user