22 #ifndef MEDIASTATION_MEDIASCRIPT_SCRIPTVALUE_H 23 #define MEDIASTATION_MEDIASCRIPT_SCRIPTVALUE_H 25 #include "common/ptr.h" 26 #include "common/str.h" 28 #include "mediastation/datafile.h" 29 #include "mediastation/mediascript/scriptconstants.h" 30 #include "mediastation/mediascript/collection.h" 41 ScriptValueType getType()
const {
return _type; }
43 void setToFloat(uint i);
44 void setToFloat(
int i);
45 void setToFloat(
double d);
46 double asFloat()
const;
47 int asIntFromFloat()
const;
49 void setToBool(
bool b);
52 void setToTime(
double d);
53 double asTime()
const;
55 void setToParamToken(uint paramToken);
56 uint asParamToken()
const;
58 void setToAssetId(uint assetId);
59 uint asAssetId()
const;
67 void setToFunctionId(uint functionId);
68 uint asFunctionId()
const;
70 void setToMethodId(BuiltInMethod methodId);
71 BuiltInMethod asMethodId()
const;
92 ScriptValueType _type = kScriptValueTypeEmpty;
99 BuiltInMethod methodId;
105 static bool compareEmptyValues(Opcode op);
107 static bool compare(Opcode op, uint left, uint right);
108 static bool compare(Opcode op,
bool left,
bool right);
109 static bool compare(Opcode op,
double left,
double right);
113 static double binaryMathOperation(Opcode op,
double left,
double right);
115 void issueValueMismatchWarning(ScriptValueType actualType)
const;