Difference between revisions of "IC Python API:RLPy RVariant"
From Reallusion Wiki!
Chuck (RL) (Talk | contribs) m |
Chuck (RL) (Talk | contribs) m |
||
(3 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
== Description == | == 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 | + | 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. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
== Member Functions == | == Member Functions == | ||
Line 25: | Line 11: | ||
=== GetType ( self ) === | === GetType ( self ) === | ||
− | Get type of | + | Get type of this [[IC_Python_API:RLPy_RVariant|RVariant]] object. |
==== Returns ==== | ==== Returns ==== | ||
− | :Type of | + | :Type of this [[IC_Python_API:RLPy_RVariant|RVariant]] object - int |
− | *RLPy.RVariant.Float | + | :*RLPy.RVariant.Float |
− | *RLPy.RVariant.Int32 | + | :*RLPy.RVariant.Int32 |
− | *RLPy.RVariantUInt32 | + | :*RLPy.RVariantUInt32 |
− | <syntaxhighlight lang=" | + | <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 | ||
+ | |||
+ | y = RLPy.RVariant(10.0) | ||
+ | print(y.GetType() == RLPy.RVariant.Float) #true | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 42: | Line 31: | ||
Convert to float. | Convert to float. | ||
− | See Also: [[#ToInt32 ( self, pSucess = None )|ToInt32 | + | See Also: [[#ToInt32 ( self, pSucess = None )|ToInt32]], [[#ToUInt32 ( self, pSucess = None )|ToUInt32]] |
==== Parameters ==== | ==== Parameters ==== | ||
− | :pSucess [IN] success or not - bool | + | :'''pSucess''' [IN] success or not - bool |
==== Returns ==== | ==== Returns ==== | ||
:Value after conversion - float | :Value after conversion - float | ||
− | <syntaxhighlight lang=" | + | <syntaxhighlight lang="python" line='line'> |
x = RLPy.RVariant(-10) | x = RLPy.RVariant(-10) | ||
f = x.ToFloat() | f = x.ToFloat() | ||
Line 60: | Line 49: | ||
Convert to int32_t. | Convert to int32_t. | ||
− | See Also: [[#ToFloat ( self, pSucess = None )|ToFloat | + | See Also: [[#ToFloat ( self, pSucess = None )|ToFloat]], [[#ToUInt32 ( self, pSucess = None )|ToUInt32]] |
==== Parameters ==== | ==== Parameters ==== | ||
− | :pSucess [IN] success or not - bool | + | :'''pSucess''' [IN] success or not - bool |
==== Returns ==== | ==== Returns ==== | ||
:Signed integer value after conversion - int32 | :Signed integer value after conversion - int32 | ||
− | <syntaxhighlight lang=" | + | <syntaxhighlight lang="python" line='line'> |
f = RLPy.RVariant(-10.0) | f = RLPy.RVariant(-10.0) | ||
x = f.ToInt32() | x = f.ToInt32() | ||
Line 74: | Line 63: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | === ToUInt32( self, pSucess = None ) === | + | === ToUInt32 ( self, pSucess = None ) === |
Convert to uint32_t. | Convert to uint32_t. | ||
− | See Also: [[#ToFloat ( self, pSucess = None )|ToFloat | + | See Also: [[#ToFloat ( self, pSucess = None )|ToFloat]], [[#ToInt32 ( self, pSucess = None )|ToInt32]] |
==== Parameters ==== | ==== Parameters ==== | ||
− | :pSucess [IN] success or not - bool | + | :'''pSucess''' [IN] success or not - bool |
==== Returns ==== | ==== Returns ==== | ||
:Unsigned integer value after conversion - uint32 | :Unsigned integer value after conversion - uint32 | ||
− | <syntaxhighlight lang=" | + | <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> |
Latest revision as of 23:27, 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.
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
3
4 y = RLPy.RVariant(10.0)
5 print(y.GetType() == RLPy.RVariant.Float) #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)