acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
__payload_cast.h
1// From payload.h by camilo on 2022-10-06 21:20 <3ThomasBorregaardSorensen!!
2#pragma once
3
4
5//#include "acme/filesystem/filesystem/path.h"
7//#include "acme/prototype/collection/payload_array.h"
9//#include "acme/prototype/prototype/::property_set.h"
10
11
12class CLASS_DECL_ACME payload_cast
13{
14public:
15
16
17 const payload & m_payload;
18
19
20 payload_cast(const ::payload & payload) :
21 m_payload(payload)
22 {
23
24 }
25
26
27 //operator enum_check () const { return m_payload.echeck(); }
28
29 operator bool() const { return m_payload.get_bool(); }
30 operator ::i8 ()const { return m_payload.as_i8(); }
31 operator ::u8 ()const { return m_payload.as_u8(); }
32 operator ::i16 () const { return m_payload.as_i16(); }
33 operator ::u16 ()const { return m_payload.as_u16(); }
34 operator ::i32 () const { return m_payload.as_i32(); }
35 operator ::u32 ()const { return m_payload.as_u32(); }
36 operator ::i64 () const { return m_payload.as_i64(); }
37 operator ::u64 ()const { return m_payload.as_u64(); }
38
39 operator ::f32 () const { return m_payload.as_f32(); }
40 operator ::f64 ()const { return m_payload.as_f64(); }
41
42 operator class ::time ()const { return m_payload.as_time(); }
43 operator earth::time()const { return m_payload.as_earth_time(); }
44
45
46 operator string ()const { return m_payload.as_string(); }
47 //operator property ()const { return m_payload.property(); }
48
49
50 operator ::i32_array_base ()const { return m_payload.as_int_array(); }
51 operator ::i64_array_base ()const { return m_payload.as_i64_array(); }
52 operator ::string_array_base ()const { return m_payload.as_string_array(); }
53 operator ::payload_array() const { return m_payload.as_payload_array(); }
54 operator ::property_set() const { return m_payload.as_property_set(); }
55 operator ::file::path() const { return m_payload.as_file_path(); }
56
57
58};
59
60
61//inline payload_cast::operator payload_array () const
62//{
63//
64// return m_payload.payloada();
65//
66//}
67//
68//
69//inline payload_cast::operator ::property_set () const
70//{
71//
72// return m_payload.propset();
73//
74//}
Definition earth_time.h:33
Definition payload.h:54