Lumiverse  2.5
A framework for creating lighting control applications
LumiverseType.h
Go to the documentation of this file.
1 
4 #ifndef _LumiverseTYPE_H_
5 #define _LumiverseTYPE_H_
6 #pragma once
7 
8 #include <string>
9 #include "Logger.h"
10 #include "lib/libjson/libjson.h"
11 
12 // Color and rotation use unordered_maps with initailizers for convenience
13 // Apparently VS2012 didn't fully implement this
14 #define USE_C11_MAPS
15 
16 #ifdef _MSC_VER
17  #if _MSC_VER <= 1700
18  #undef USE_C11_MAPS
19  #endif
20 #endif
21 
22 using namespace std;
23 
24 namespace Lumiverse {
34  {
35  public:
37  virtual ~LumiverseType() { };
38 
45  virtual string getTypeName() = 0;
46 
50  virtual void reset() = 0;
51 
57  virtual JSONNode toJSON(string name) = 0;
58 
64  virtual string asString() = 0;
65 
69  virtual bool isDefault() = 0;
70 
71  // Yeah actually there's not much here because types are
72  // all different.
73  };
74 }
75 #endif
This class is a wapper around a variety of different possible data types that might be needed by a De...
Definition: LumiverseType.h:33
Definition: Layer.h:437
virtual ~LumiverseType()
Destroys the object.
Definition: LumiverseType.h:37
Contains functions for logging information to console or file.
Contains all core Lumiverse functions and variables.
Definition: Device.cpp:2