Difference between revisions of "IC Python API:RLPy RVariant"
From Reallusion Wiki!
Chuck (RL) (Talk | contribs) m |
Chuck (RL) (Talk | contribs) m |
||
Line 5: | Line 5: | ||
== Description == | == Description == | ||
− | This class acts like an union for common data types. A [[IC_Python_API:RLPy_RVariant|RVariant]]object holds a single value of a specified type T at a time. You can use [[#GetType ( self )|GetType]] to find out what type the variant holds, and get its value by one of the ToT() functions, e.g. [[#ToInt32 ( self, pSucess = None )|ToInt32]]. Currently, there are two types supported: float and int. | + | This class acts like an union for common data types. A [[IC_Python_API:RLPy_RVariant|RVariant]] object holds a single value of a specified type T at a time. You can use [[#GetType ( self )|GetType]] to find out what type the variant holds, and get its value by one of the ToT() functions, e.g. [[#ToInt32 ( self, pSucess = None )|ToInt32]]. Currently, there are two types supported: float and int. |
− | <syntaxhighlight lang="python"> | + | <syntaxhighlight lang="python" line='line'> |
x = RLPy.RVariant(-10) | x = RLPy.RVariant(-10) | ||
print(x.GetType() == RLPy.RVariant.Int32) #true | print(x.GetType() == RLPy.RVariant.Int32) #true | ||
Line 33: | Line 33: | ||
:*RLPy.RVariantUInt32 | :*RLPy.RVariantUInt32 | ||
− | <syntaxhighlight lang="python"> | + | <syntaxhighlight lang="python" line='line'> |
x = RLPy.RVariant(-10) | x = RLPy.RVariant(-10) | ||
print(x.GetType() == RLPy.RVariant.Int32) #true | print(x.GetType() == RLPy.RVariant.Int32) #true | ||
Line 42: | Line 42: | ||
Convert to float. | Convert to float. | ||
− | See Also: [[#ToInt32 ( self, pSucess = None )|ToInt32]], [[#ToUInt32( self, pSucess = None )|ToUInt32]] | + | See Also: [[#ToInt32 ( self, pSucess = None )|ToInt32]], [[#ToUInt32 ( self, pSucess = None )|ToUInt32]] |
==== Parameters ==== | ==== Parameters ==== | ||
Line 50: | Line 50: | ||
:Value after conversion - float | :Value after conversion - float | ||
− | <syntaxhighlight lang="python"> | + | <syntaxhighlight lang="python" line='line'> |
x = RLPy.RVariant(-10) | x = RLPy.RVariant(-10) | ||
f = x.ToFloat() | f = x.ToFloat() | ||
Line 60: | Line 60: | ||
Convert to int32_t. | Convert to int32_t. | ||
− | See Also: [[#ToFloat ( self, pSucess = None )|ToFloat]], [[#ToUInt32( self, pSucess = None )|ToUInt32]] | + | See Also: [[#ToFloat ( self, pSucess = None )|ToFloat]], [[#ToUInt32 ( self, pSucess = None )|ToUInt32]] |
==== Parameters ==== | ==== Parameters ==== | ||
Line 68: | Line 68: | ||
:Signed integer value after conversion - int32 | :Signed integer value after conversion - int32 | ||
− | <syntaxhighlight lang="python"> | + | <syntaxhighlight lang="python" line='line'> |
f = RLPy.RVariant(-10.0) | f = RLPy.RVariant(-10.0) | ||
x = f.ToInt32() | x = f.ToInt32() | ||
Line 74: | Line 74: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | === ToUInt32( self, pSucess = None ) === | + | === ToUInt32 ( self, pSucess = None ) === |
Convert to uint32_t. | Convert to uint32_t. | ||
Line 86: | Line 86: | ||
:Unsigned integer value after conversion - uint32 | :Unsigned integer value after conversion - uint32 | ||
− | <syntaxhighlight lang="python"> | + | <syntaxhighlight lang="python" line='line'> |
f = RLPy.RVariant(10.0) | f = RLPy.RVariant(10.0) | ||
x = f.ToUInt32() | x = f.ToUInt32() | ||
print(x) | print(x) | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 23:25, 13 April 2020
- Main article: Modules.
- Last modified: 04/13/2020
Description
This class acts like an union for common data types. A RVariant object holds a single value of a specified type T at a time. You can use GetType to find out what type the variant holds, and get its value by one of the ToT() functions, e.g. ToInt32. Currently, there are two types supported: float and int.
1 x = RLPy.RVariant(-10)
2 print(x.GetType() == RLPy.RVariant.Int32) #true
3
4 f = x.ToFloat()
5 print(f) #-10.0
6
7 y = RLPy.RVariant(10.0)
8 print(y.GetType() == RLPy.RVariant.Float) #true
9
10 n = x.ToInt32()
11 print(n)
Member Functions
GetType ( self )
Get type of this RVariant object.
Returns
- Type of this RVariant object - int
- RLPy.RVariant.Float
- RLPy.RVariant.Int32
- RLPy.RVariantUInt32
1 x = RLPy.RVariant(-10)
2 print(x.GetType() == RLPy.RVariant.Int32) #true
ToFloat ( self, pSucess = None )
Convert to float.
Parameters
- pSucess [IN] success or not - bool
Returns
- Value after conversion - float
1 x = RLPy.RVariant(-10)
2 f = x.ToFloat()
3 print(f)
ToInt32 ( self, pSucess = None )
Convert to int32_t.
Parameters
- pSucess [IN] success or not - bool
Returns
- Signed integer value after conversion - int32
1 f = RLPy.RVariant(-10.0)
2 x = f.ToInt32()
3 print(x)
ToUInt32 ( self, pSucess = None )
Convert to uint32_t.
Parameters
- pSucess [IN] success or not - bool
Returns
- Unsigned integer value after conversion - uint32
1 f = RLPy.RVariant(10.0)
2 x = f.ToUInt32()
3 print(x)