16 #include <unordered_map> 19 # pragma warning(disable: 4251) //Not an issue as long as debug and release libraries aren't mixed 22 # define SPRK_API __declspec (dllexport) 24 # define SPRK_API __declspec (dllimport) 29 # if defined(LINUX_SYSTEM) && defined(SPRK) 31 # define SPRK_API __attribute__ ((visibility ("default"))) 53 class OperatorControl;
54 class AnimationControl;
55 class NavigationCubeControl;
56 class AxisTriadControl;
59 class ComponentHighlightEvent;
72 #if !defined(_MSC_VER) || _MSC_VER >= 1900 100 uint32_t time_in_ticks;
144 uint32_t time_in_ticks;
188 uint32_t time_in_ticks;
232 uint32_t time_in_ticks;
276 uint32_t time_in_ticks;
310 typedef std::vector<OperatorPtr, Allocator<OperatorPtr> > OperatorPtrArray;
312 typedef std::vector<Canvas, Allocator<Canvas> > CanvasArray;
313 typedef std::vector<Layout, Allocator<Layout> > LayoutArray;
314 typedef std::vector<View, Allocator<View> > ViewArray;
315 typedef std::vector<Model, Allocator<Model> > ModelArray;
317 typedef std::vector<Component, Allocator<Component> > ComponentArray;
318 typedef std::vector<Metadata, Allocator<Metadata> > MetadataArray;
319 typedef std::vector<Filter, Allocator<Filter> > FilterArray;
320 typedef std::vector<Capture, Allocator<Capture> > CaptureArray;
321 typedef std::vector<CADModel, Allocator<CADModel> > CADModelArray;
322 typedef std::vector<ReferenceKeyArray, Allocator<ReferenceKeyArray>> ReferenceKeyArrayArray;
323 typedef std::vector<ComponentPath, Allocator<ComponentPath>> ComponentPathArray;
324 typedef std::vector<HighlightOptionsKit, Allocator<HighlightOptionsKit>> HighlightOptionsKitArray;
326 typedef std::vector<Sampler, Allocator<Sampler> > SamplerArray;
327 typedef std::vector<Channel, Allocator<Channel> > ChannelArray;
328 typedef std::vector<Animation, Allocator<Animation> > AnimationArray;
329 typedef std::vector<VectorKeyframe, Allocator<VectorKeyframe> > VectorKeyframeArray;
330 typedef std::vector<PointKeyframe, Allocator<PointKeyframe> > PointKeyframeArray;
331 typedef std::vector<FloatKeyframe, Allocator<FloatKeyframe> > FloatKeyframeArray;
332 typedef std::vector<QuaternionKeyframe, Allocator<QuaternionKeyframe> > QuaternionKeyframeArray;
333 typedef std::vector<RGBColorKeyframe, Allocator<RGBColorKeyframe> > RGBColorKeyframeArray;
335 typedef std::vector<VectorSplineControlValues, Allocator<VectorSplineControlValues>> VectorSplineControlValuesArray;
336 typedef std::vector<PointSplineControlValues, Allocator<PointSplineControlValues>> PointSplineControlValuesArray;
337 typedef std::vector<FloatSplineControlValues, Allocator<FloatSplineControlValues>> FloatSplineControlValuesArray;
338 typedef std::vector<QuaternionSplineControlValues, Allocator<QuaternionSplineControlValues>> QuaternionSplineControlValuesArray;
339 typedef std::vector<RGBColorSplineControlValues, Allocator<RGBColorSplineControlValues>> RGBColorSplineControlValuesArray;
361 static const HPS::Type staticType = HPS::Type::Sampler;
371 void Assign(
Sampler const & in_that);
378 bool Equals(
Sampler const & in_that)
const;
383 bool operator!=(
Sampler const & in_that)
const;
388 bool operator==(
Sampler const & in_that)
const;
392 void SetInterpolation(InterpolationType in_interpolation);
396 InterpolationType GetInterpolation()
const;
406 static const HPS::Type staticType = HPS::Type::RGBColorSampler;
420 void SetKeyframes(RGBColorKeyframeArray
const & in_keyframes);
438 void AddKeyframes(RGBColorKeyframeArray
const & in_keyframes);
462 RGBColorKeyframeArray
const & GetKeyframes()
const;
468 void SetControlValues(RGBColorSplineControlValuesArray
const & in_control_points);
472 RGBColorSplineControlValuesArray
const & GetControlValues()
const;
482 static const HPS::Type staticType = HPS::Type::VectorSampler;
495 void SetKeyframes(VectorKeyframeArray
const & in_keyframes);
503 void SetKeyframes(
size_t in_count,
VectorKeyframe const in_keyframes[]);
511 void AddKeyframes(VectorKeyframeArray
const & in_keyframes);
520 void AddKeyframes(
size_t in_count,
VectorKeyframe const in_keyframes[]);
532 VectorKeyframeArray
const & GetKeyframes()
const;
538 void SetControlValues(VectorSplineControlValuesArray
const & in_control_points);
542 VectorSplineControlValuesArray
const & GetControlValues()
const;
552 static const HPS::Type staticType = HPS::Type::PointSampler;
565 void SetKeyframes(PointKeyframeArray
const & in_keyframes);
573 void SetKeyframes(
size_t in_count,
PointKeyframe const in_keyframes[]);
581 void AddKeyframes(PointKeyframeArray
const & in_keyframes);
590 void AddKeyframes(
size_t in_count,
PointKeyframe const in_keyframes[]);
602 PointKeyframeArray
const & GetKeyframes()
const;
608 void SetControlValues(PointSplineControlValuesArray
const & in_control_points);
612 PointSplineControlValuesArray
const & GetControlValues()
const;
622 static const HPS::Type staticType = HPS::Type::QuaternionSampler;
635 void SetKeyframes(QuaternionKeyframeArray
const & in_keyframes);
651 void AddKeyframes(QuaternionKeyframeArray
const & in_keyframes);
672 QuaternionKeyframeArray
const & GetKeyframes()
const;
678 void SetControlValues(QuaternionSplineControlValuesArray
const & in_control_points);
682 QuaternionSplineControlValuesArray
const & GetControlValues()
const;
692 static const HPS::Type staticType = HPS::Type::FloatSampler;
705 void SetKeyframes(FloatKeyframeArray
const & in_keyframes);
713 void SetKeyframes(
size_t in_count,
FloatKeyframe const in_keyframes[]);
721 void AddKeyframes(FloatKeyframeArray
const & in_keyframes);
730 void AddKeyframes(
size_t in_count,
FloatKeyframe const in_keyframes[]);
742 FloatKeyframeArray
const & GetKeyframes()
const;
748 void SetControlValues(FloatSplineControlValuesArray
const & in_control_points);
752 FloatSplineControlValuesArray
const & GetControlValues()
const;
775 static const HPS::Type staticType = HPS::Type::Channel;
785 void Assign(
Channel const & in_that);
792 bool Equals(
Channel const & in_that)
const;
797 bool operator!=(
Channel const & in_that)
const;
802 bool operator==(
Channel const & in_that)
const;
806 KeyPath const & GetTarget()
const;
810 Sampler const & GetSampler()
const;
818 UTF8 & GetName()
const;
822 ChannelType GetChannelType()
const;
826 void SetSampler(
Sampler const & sampler);
835 static const HPS::Type staticType = HPS::Type::Animation;
852 bool Equals(
Animation const & in_that)
const;
857 bool operator!=(
Animation const & in_that)
const;
862 bool operator==(
Animation const & in_that)
const;
919 void RemoveChannel(
Channel & in_channel);
923 ChannelArray
const & GetChannels()
const;
927 UTF8 const & GetName()
const;
943 static const HPS::Type staticType = HPS::Type::Canvas;
950 void Assign(
Canvas const & in_that);
952 bool Equals(
Canvas const & in_that)
const;
953 bool operator!= (
Canvas const & in_that)
const;
954 bool operator== (
Canvas const & in_that)
const;
957 UTF8 GetName()
const;
962 void AttachLayout(
Layout const & in_layout);
966 void AttachViewAsLayout(
View const & in_view);
972 Layout GetAttachedLayout()
const;
975 IncludeKey GetAttachedLayoutIncludeLink()
const;
978 View GetFrontView()
const;
1012 void SetFrameRate(
float in_frame_rate=20);
1017 float GetFrameRate()
const;
1046 static const HPS::Type staticType = HPS::Type::SprocketControl;
1049 #if !defined(_MSC_VER) || _MSC_VER >= 1900 1066 this->Object::operator=(std::move(in_that));
1074 static const HPS::Type staticType = HPS::Type::SprocketKit;
1077 #if !defined(_MSC_VER) || _MSC_VER >= 1900 1094 this->Object::operator=(std::move(in_that));
1110 static const HPS::Type staticType = HPS::Type::View;
1116 View & operator=(
View const & in_that);
1117 void Assign(
View const & in_that);
1119 bool Equals(
View const & in_that)
const;
1120 bool operator!= (
View const & in_that)
const;
1121 bool operator== (
View const & in_that)
const;
1124 UTF8 GetName()
const;
1191 void AttachModel(
Model const & in_model);
1197 Model GetAttachedModel()
const;
1200 IncludeKey GetAttachedModelIncludeLink()
const;
1212 OperatorPtrArray GetOperators()
const;
1216 void SetOperators(OperatorPtrArray & in_operators);
1221 void SetOperators(
size_t in_count,
OperatorPtr in_operators []);
1225 void SetOperator(
OperatorPtr const & in_operator);
1230 void SetOperator(
Operator * in_operator);
1256 SegmentKey const GetModelOverrideSegmentKey()
const;
1268 void SetSimpleShadow(
bool in_state,
float in_percent_offset = 5.0f);
1271 bool GetSimpleShadow();
1277 void SetSimpleReflection(
bool in_state,
float in_percent_offset = 5.0f);
1280 bool GetSimpleReflection();
1283 void Update()
const;
1304 void SmoothTransition(
HPS::CameraKit const & in_camera_kit, HPS::Time in_duration = 0.5);
1307 KeyArray const GetNavigationKeys();
1310 LayoutArray GetOwningLayouts();
1311 LayoutArray
const GetOwningLayouts()
const;
1324 static const HPS::Type staticType = HPS::Type::Model;
1331 void Assign(
Model const & in_that);
1333 bool Equals(
Model const & in_that)
const;
1334 bool operator!= (
Model const & in_that)
const;
1335 bool operator== (
Model const & in_that)
const;
1338 UTF8 GetName()
const;
1362 HPS::ViewArray GetOwningViews();
1363 HPS::ViewArray
const GetOwningViews()
const;
1374 void Update()
const;
1392 Animation CreateAnimation(
const char * in_name);
1396 AnimationArray
const & GetAnimations();
1409 static const HPS::Type staticType = HPS::Type::Layout;
1416 void Assign(
Layout const & in_that);
1418 bool Equals(
Layout const & in_that)
const;
1419 bool operator!= (
Layout const & in_that)
const;
1420 bool operator== (
Layout const & in_that)
const;
1423 UTF8 GetName()
const;
1426 size_t GetLayerCount()
const;
1439 void DetachLayer(
size_t in_layer);
1443 void DetachView(
View const & in_view);
1447 void BringToFront(
size_t in_layer);
1452 void ReassignLayer(
size_t in_layer,
HPS::View in_view);
1457 void RepositionLayer(
size_t in_layer,
HPS::Rectangle const & in_position);
1460 View GetFrontView()
const;
1465 View GetAttachedView(
size_t in_layer = 0)
const;
1470 Rectangle GetPosition(
size_t in_layer)
const;
1473 IncludeKey GetAttachedViewIncludeLink(
size_t in_layer)
const;
1476 SegmentKey GetLayerSegmentKey(
size_t in_layer)
const;
1494 CanvasArray GetOwningCanvases();
1495 CanvasArray
const GetOwningCanvases()
const;
1498 void Update()
const;
1524 channel = GetClassID();
1529 :
Event(), canvas(in_canvas)
1531 channel = GetClassID();
1539 if (in_event.
GetChannel() == Object::ClassID<CanvasDeletedEvent>())
1542 canvas = that.canvas;
1567 channel = GetClassID();
1572 :
Event(), canvas(in_canvas), layout(in_layout)
1574 channel = GetClassID();
1582 if (in_event.
GetChannel() == Object::ClassID<LayoutDetachedEvent>())
1585 canvas = that.canvas;
1586 layout = that.layout;
1612 channel = GetClassID();
1617 :
Event(), layout(in_layout)
1619 channel = GetClassID();
1627 if (in_event.
GetChannel() == Object::ClassID<LayoutDeletedEvent>())
1630 layout = that.layout;
1662 channel = GetClassID();
1667 :
Event(), layout(in_layout), action(Action::SpecificLayer), layer(in_layer), view(in_view)
1669 channel = GetClassID();
1673 ViewDetachedEvent(Layout
const & in_layout, View
const & in_view)
1674 : Event(), layout(in_layout), action(Action::AllLayers), layer(
std::numeric_limits<size_t>::max()), view(in_view)
1676 channel = GetClassID();
1684 if (in_event.
GetChannel() == Object::ClassID<ViewDetachedEvent>())
1687 layout = that.layout;
1688 action = that.action;
1718 channel = GetClassID();
1723 :
Event(), view(in_view)
1725 channel = GetClassID();
1733 if (in_event.
GetChannel() == Object::ClassID<ViewDeletedEvent>())
1761 channel = GetClassID();
1766 :
Event(), view(in_view), model(in_model)
1768 channel = GetClassID();
1776 if (in_event.
GetChannel() == Object::ClassID<ModelDetachedEvent>())
1806 channel = GetClassID();
1811 :
Event(), model(in_model)
1813 channel = GetClassID();
1821 if (in_event.
GetChannel() == Object::ClassID<ModelDeletedEvent>())
1849 channel = GetClassID();
1854 :
Event(), view(in_view)
1856 channel = GetClassID();
1864 if (in_event.
GetChannel() == Object::ClassID<CameraChangedEvent>())
1879 if (view == that_event->view)
1887 return GetClassID();
1913 static const HPS::Type staticType = HPS::Type::SprocketPath;
1924 Canvas GetCanvas()
const;
1927 Layout GetLayout()
const;
1930 View GetView()
const;
1933 Model GetModel()
const;
1953 static const HPS::Type staticType = HPS::Type::Operator;
1959 virtual void Assign(
Operator const & in_that);
1962 virtual bool Equals(
Operator const & in_that)
const;
1965 virtual bool operator!= (
Operator const & in_that)
const;
1968 virtual bool operator== (
Operator const & in_that)
const;
1974 View GetAttachedView()
const;
2093 static double internal_acos(
double x)
2095 return (((x)<-1) ? (HPS::PI) : (((x)>1) ? (0) : (acos(x))));
2110 float len =
static_cast<float>(out_vec.Length());
2117 out_vec.z = (float)sqrt(1.0f - (len*len));
2120 static float CalculateAngleOrbitOnPlane(
HPS::Vector const &axis, ProjectedPlane plane)
2125 if (plane == Plane_XY)
2127 else if (plane == Plane_YZ)
2136 float tmp = naxis.Dot(vtmp);
2137 if (static_cast<float>(Abs(tmp)) > 1.001f || static_cast<float>(Abs(tmp)) < 0.999f)
2138 theta =
static_cast<float>(internal_acos(tmp));
2170 static const HPS::Type staticType = HPS::Type::OperatorControl;
2182 size_t GetCount(Operator::Priority in_priority);
2203 bool Pop(Operator::Priority in_priority = Operator::Priority::Default);
2216 bool Pop(Operator::Priority in_priority,
OperatorPtr & out_operator);
2239 OperatorControl & Set(OperatorPtrArray & in_operators, Operator::Priority in_priority = Operator::Priority::Default);
2247 OperatorControl & Set(
size_t in_count,
OperatorPtr in_operators [], Operator::Priority in_priority = Operator::Priority::Default);
2253 OperatorControl & UnsetTop(Operator::Priority in_priority = Operator::Priority::Default);
2274 bool ShowTop(Operator::Priority in_priority,
OperatorPtr & out_operator)
const;
2279 bool Show(OperatorPtrArray & out_operators)
const;
2285 bool Show(Operator::Priority in_priority, OperatorPtrArray & out_operators)
const;
2329 static const HPS::Type staticType = HPS::Type::NavigationCubeControl;
2347 Location GetLocation()
const;
2375 bool GetVisibility()
const;
2384 bool GetTextVisibility()
const;
2418 bool GetInteractivity()
const;
2428 float GetSize()
const;
2446 NavigationCubeControl & SetText(
const char * in_back_string,
const char * in_top_string,
const char * in_left_string,
2447 const char * in_front_string,
const char * in_bottom_string,
const char * in_right_string,
2478 NavigationCubeControl & SetMaterialPaletteAndText(
char const * in_material_palette,
const char * in_back_string,
2479 const char * in_top_string,
const char * in_left_string,
const char * in_front_string,
const char * in_bottom_string,
2493 bool GetText(
UTF8 & out_back_string,
UTF8 & out_top_string,
UTF8 & out_left_string,
2494 UTF8 & out_front_string,
UTF8 & out_bottom_string,
UTF8 & out_right_string,
2507 void SetNavigationCubeVisibilityLink(
bool in_visibility)
const;
2509 bool IsTextVisible()
const;
2546 static const HPS::Type staticType = HPS::Type::AxisTriadControl;
2564 Location GetLocation()
const;
2592 bool GetVisibility()
const;
2601 bool GetTextVisibility()
const;
2627 bool GetInteractivity()
const;
2637 float GetSize()
const;
2650 void SetAxisVisibilityLink(
bool in_visibility)
const;
2663 GenericMask = 0xfffff000,
2665 ExchangeComponentMask = 0x00001000,
2666 ExchangeModelFile = 0x00001001,
2667 ExchangeProductOccurrence = 0x00001002,
2668 ExchangePartDefinition = 0x00001003,
2670 ExchangeView = 0x00001004,
2671 ExchangeFilter = 0x00001005,
2673 ExchangeRepresentationItemMask = 0x00003000,
2674 ExchangeRIBRepModel = 0x00003001,
2675 ExchangeRICurve = 0x00003002,
2676 ExchangeRIDirection = 0x00003003,
2677 ExchangeRIPlane = 0x00003004,
2678 ExchangeRIPointSet = 0x00003005,
2679 ExchangeRIPolyBRepModel = 0x00003006,
2680 ExchangeRIPolyWire = 0x00003007,
2681 ExchangeRISet = 0x00003008,
2682 ExchangeRICoordinateSystem = 0x00003009,
2684 ExchangeTopologyMask = 0x00005000,
2685 ExchangeTopoBody = 0x00005001,
2686 ExchangeTopoConnex = 0x00005002,
2687 ExchangeTopoShell = 0x00005003,
2688 ExchangeTopoFace = 0x00005004,
2689 ExchangeTopoLoop = 0x00005005,
2690 ExchangeTopoCoEdge = 0x00005006,
2691 ExchangeTopoEdge = 0x00005007,
2692 ExchangeTopoVertex = 0x00005008,
2693 ExchangeTopoSingleWireBody = 0x00005009,
2694 ExchangeTopoWireEdge = 0x0000500a,
2696 ExchangeDrawingMask = 0x00009000,
2697 ExchangeDrawingModel = 0x00009001,
2698 ExchangeDrawingView = 0x00009002,
2699 ExchangeDrawingSheet = 0x00009003,
2700 ExchangeBasicDrawingBlock = 0x00009004,
2701 ExchangeOperatorDrawingBlock = 0x00009005,
2703 ExchangePMIMask = 0x00011000,
2704 ExchangePMI = ExchangePMIMask,
2705 ExchangePMIText = 0x00011100,
2706 ExchangePMIRichText = 0x00011200,
2707 ExchangePMIRoughness = 0x00011300,
2708 ExchangePMIGDT = 0x00011400,
2709 ExchangePMIDatum = 0x00011500,
2710 ExchangePMILineWelding = 0x00011600,
2711 ExchangePMISpotWelding = 0x00011700,
2712 ExchangePMIDimension = 0x00011800,
2713 ExchangePMIBalloon = 0x00011900,
2714 ExchangePMICoordinate = 0x00011a00,
2715 ExchangePMIFastener = 0x00011b00,
2716 ExchangePMILocator = 0x00011c00,
2717 ExchangePMIMeasurementPoint = 0x00011d00,
2720 ParasolidComponentMask = 0x00020000,
2722 ParasolidModelFile = 0x00020001,
2723 ParasolidAssembly = 0x00020002,
2724 ParasolidInstance = 0x00020003,
2726 ParasolidTopologyMask = 0x00060000,
2727 ParasolidTopoBody = 0x00060001,
2728 ParasolidTopoRegion = 0x00060002,
2729 ParasolidTopoShell = 0x00060003,
2730 ParasolidTopoFace = 0x00060004,
2731 ParasolidTopoLoop = 0x00060005,
2732 ParasolidTopoFin = 0x00060006,
2733 ParasolidTopoEdge = 0x00060007,
2734 ParasolidTopoVertex = 0x00060008,
2737 DWGComponentMask = 0x00100000,
2738 DWGModelFile = 0x00100001,
2739 DWGLayout = 0x00100002,
2740 DWGBlockTable = 0x00100003,
2741 DWGBlockTableRecord = 0x00100004,
2742 DWGEntity = 0x00100005,
2743 DWGLayerTable = 0x00100006,
2744 DWGLayer = 0x00100007,
2747 UserComponent = 0x01000000,
2774 static const HPS::Type staticType = HPS::Type::Component;
2791 virtual void Assign(
Component const & in_that);
2796 bool Equals(
Component const & in_that)
const;
2801 bool operator!=(
Component const & in_that)
const;
2806 bool operator==(
Component const & in_that)
const;
2811 ComponentType GetComponentType()
const;
2816 bool HasComponentType(ComponentType in_mask)
const;
2825 void AddKey(
Key const & in_key);
2843 ComponentArray GetOwners()
const;
2847 ComponentArray GetSubcomponents()
const;
2853 ComponentArray GetAllSubcomponents(ComponentType in_type)
const;
2859 void AddReference(
Component & in_reference);
2867 ComponentArray GetReferrers()
const;
2872 ComponentArray GetReferences()
const;
2878 MetadataArray GetAllMetadata()
const;
2883 Metadata GetMetadata(
char const * in_name)
const;
2888 UTF8 GetName()
const;
2980 static KeyPathArray GetKeyPath(ComponentArray
const & in_components);
2987 bool SetTransform(
MatrixKit const & in_transform);
2994 bool AddTransform(
MatrixKit const & in_transform);
3022 bool SetName(
char const * in_new_name);
3065 static const HPS::Type staticType = HPS::Type::ComponentPath;
3085 ComponentPath & operator+=(ComponentArray
const & in_components);
3103 ComponentPath & Append(ComponentArray
const & in_components);
3138 ComponentPath & SetComponents(ComponentArray
const & in_components);
3148 ComponentArray GetComponents()
const;
3176 void Highlight(
Canvas const & in_canvas,
size_t in_layer,
HighlightOptionsKit const & in_options,
bool in_remove_existing =
true)
const;
3201 void Hide(
Canvas const & in_canvas,
size_t in_layer = 0);
3214 void Show(
Canvas const & in_canvas,
size_t in_layer = 0);
3227 bool IsHidden(
Canvas const & in_canvas,
size_t in_layer = 0)
const;
3239 void Isolate(
Canvas const & in_canvas,
size_t in_layer = 0);
3252 static void Isolate(HPS::ComponentPathArray & in_component_paths,
Canvas const & in_canvas,
size_t in_layer = 0);
3263 void ResetVisibility(
Canvas const & in_canvas,
size_t in_layer = 0);
3275 static void ResetVisibility(HPS::ComponentPathArray & in_component_paths,
Canvas const & in_canvas,
size_t in_layer = 0);
3279 size_t Size()
const;
3289 Component const & At(
size_t in_index)
const;
3295 void Insert(
size_t in_index,
Component const & in_item);
3304 void Remove(
size_t in_index);
3352 ComponentPath & PushBack(ComponentArray
const & in_components);
3354 #ifndef HPS_GULP_CLANG 3355 using iterator = HPS::ComponentArray::iterator;
3356 using const_iterator = HPS::ComponentArray::const_iterator;
3357 using reverse_iterator = HPS::ComponentArray::reverse_iterator;
3358 using const_reverse_iterator = HPS::ComponentArray::const_reverse_iterator;
3366 const_iterator begin()
const;
3374 const_iterator end()
const;
3378 const_iterator cbegin()
const;
3382 const_iterator cend()
const;
3386 reverse_iterator rbegin();
3390 reverse_iterator rend();
3394 const_reverse_iterator rbegin()
const;
3398 const_reverse_iterator rend()
const;
3407 inline ComponentPath operator+(Component
const & in_lhs, Component
const & in_rhs)
3416 inline ComponentPath operator+(Component
const & in_lhs, ComponentArray
const & in_rhs)
3425 inline ComponentPath operator+(Component
const & in_lhs, ComponentPath
const & in_rhs)
3434 inline ComponentPath operator+(ComponentArray
const & in_lhs, Component
const & in_rhs)
3443 inline ComponentPath operator+(ComponentArray
const & in_lhs, ComponentArray
const & in_rhs)
3452 inline ComponentPath operator+(ComponentArray
const & in_lhs, ComponentPath
const & in_rhs)
3461 inline ComponentPath operator+(ComponentPath
const & in_lhs, Component
const & in_rhs)
3470 inline ComponentPath operator+(ComponentPath
const & in_lhs, ComponentArray
const & in_rhs)
3479 inline ComponentPath operator+(ComponentPath
const & in_lhs, ComponentPath
const & in_rhs)
3491 channel = GetClassID();
3496 :
Event(), path(in_path), canvas(in_canvas), layer(in_layer)
3498 channel = GetClassID();
3504 if (in_event.
GetChannel() == HPS::Object::ClassID<ComponentResetEvent>())
3508 canvas = that.canvas;
3535 channel = GetClassID();
3540 :
Event(), path(in_path), canvas(in_canvas), layer(in_layer)
3542 channel = GetClassID();
3548 if (in_event.
GetChannel() == HPS::Object::ClassID<ComponentShownEvent>())
3552 canvas = that.canvas;
3579 channel = GetClassID();
3584 :
Event(), path(in_path), canvas(in_canvas), layer(in_layer)
3586 channel = GetClassID();
3592 if (in_event.
GetChannel() == HPS::Object::ClassID<ComponentHiddenEvent>())
3596 canvas = that.canvas;
3624 channel = GetClassID();
3629 :
Event(), path(in_path), canvas(in_canvas), layer(in_layer)
3631 channel = GetClassID();
3639 if (in_event.
GetChannel() == Object::ClassID<ComponentIsolatedEvent>())
3643 canvas = that.canvas;
3680 channel = GetClassID();
3682 action = Action::None;
3687 size_t in_layer = 0,
3690 :
Event(), action(in_action), path(in_path), options(in_options), canvas(in_canvas), layer(in_layer)
3692 channel = GetClassID();
3700 if (in_event.
GetChannel() == Object::ClassID<ComponentHighlightEvent>())
3703 action = that.action;
3705 options = that.options;
3706 canvas = that.canvas;
3753 static const HPS::Type staticType = HPS::Type::Filter;
3757 #if !defined(_MSC_VER) || _MSC_VER >= 1900 3769 void Activate(
View const & in_view);
3773 void Deactivate(
View const & in_view);
3790 channel = GetClassID();
3796 channel = GetClassID();
3804 if (in_event.
GetChannel() == Object::ClassID<FilterActivationEvent>())
3807 filter = that.filter;
3808 action = that.action;
3853 static const HPS::Type staticType = HPS::Type::Capture;
3856 #if !defined(_MSC_VER) || _MSC_VER >= 1900 3879 channel = GetClassID();
3885 channel = GetClassID();
3893 if (in_event.
GetChannel() == Object::ClassID<CaptureActivationEvent>())
3896 capture = that.capture;
3944 static const HPS::Type staticType = HPS::Type::CADModel;
3947 #if !defined(_MSC_VER) || _MSC_VER >= 1900 3960 Component GetComponentFromKey(
Key const & in_key)
const;
3991 Model GetModel()
const;
3995 FilterArray GetAllFilters()
const;
3999 CaptureArray GetAllCaptures()
const;
4004 FilterArray GetActiveFilters(
View const & in_view)
const;
4010 View ActivateDefaultCapture();
4020 void ResetVisibility(
Canvas const & in_canvas,
size_t in_layer = 0);
4047 static const HPS::Type staticType = HPS::Type::Metadata;
4064 virtual void Assign(
Metadata const & in_that);
4069 bool Equals(
Metadata const & in_that)
const;
4074 bool operator!=(
Metadata const & in_that)
const;
4079 bool operator==(
Metadata const & in_that)
const;
4088 void SetName(
char const * in_name);
4118 static const HPS::Type staticType = HPS::Type::IntegerMetadata;
4121 #if !defined(_MSC_VER) || _MSC_VER >= 1900 4133 int GetValue()
const;
4137 void SetValue(
int in_value);
4167 static const HPS::Type staticType = HPS::Type::UnsignedIntegerMetadata;
4170 #if !defined(_MSC_VER) || _MSC_VER >= 1900 4182 unsigned int GetValue()
const;
4186 void SetValue(
unsigned int in_value);
4216 static const HPS::Type staticType = HPS::Type::DoubleMetadata;
4219 #if !defined(_MSC_VER) || _MSC_VER >= 1900 4231 double GetValue()
const;
4235 void SetValue(
double in_value);
4265 static const HPS::Type staticType = HPS::Type::StringMetadata;
4268 #if !defined(_MSC_VER) || _MSC_VER >= 1900 4280 UTF8 GetValue()
const;
4284 void SetValue(
char const * in_value);
4310 TimeMetadata(
char const * in_name,
unsigned int in_value);
4314 static const HPS::Type staticType = HPS::Type::TimeMetadata;
4317 #if !defined(_MSC_VER) || _MSC_VER >= 1900 4329 unsigned int GetValue()
const;
4337 void SetValue(
unsigned int in_value);
4368 static const HPS::Type staticType = HPS::Type::BooleanMetadata;
4371 #if !defined(_MSC_VER) || _MSC_VER >= 1900 4383 bool GetValue()
const;
4387 void SetValue(
bool in_value);
4398 static CanvasArray GetCanvases();
4402 static LayoutArray GetLayouts();
4406 static ViewArray GetViews();
4410 static ModelArray GetModels();
4414 static CADModelArray GetCADModels();
4423 #if TARGET_OS_ANDROID == 0 && !defined(__APPLE__) 4442 static Layout CreateLayout(
char const * in_name =
"");
4447 static View CreateView(
char const * in_name =
"");
4452 static Model CreateModel(
char const * in_name =
"");
4458 static Component CreateComponent(
Component const & in_owner,
char const * in_name =
"");
4492 virtual bool OnMouseDown(
MouseState const & in_state);
4497 virtual bool OnMouseUp(
MouseState const & in_state);
4502 virtual bool OnMouseMove(
MouseState const & in_state);
4508 virtual bool OnTouchDown(
TouchState const & in_state);
4513 virtual bool OnTouchUp(
TouchState const & in_state);
4518 virtual bool OnTouchMove(
TouchState const & in_state);
4520 virtual void OnViewAttached(
HPS::View const & in_attached_view);
4527 bool IsEventRelevant(
HPS::Point const & event_location);
4529 bool operator_active;
4532 float axis_subwindow_width;
4533 float axis_subwindow_height;
4534 HPS::TouchID tracked_touch_ID;
4552 { channel = HPS::Object::ClassID<SmoothTransitionCompleteEvent>(); }
4558 if (in_event.
GetChannel() == Object::ClassID<SmoothTransitionCompleteEvent>())
4580 HPS_UNREFERENCED(in_that_event);
4618 virtual bool OnMouseDown(
MouseState const & in_state);
4623 virtual bool OnMouseUp(
MouseState const & in_state);
4628 virtual bool OnMouseMove(
MouseState const & in_state);
4633 virtual bool OnTouchDown(
TouchState const & in_state);
4638 virtual bool OnTouchUp(
TouchState const & in_state);
4643 virtual bool OnTouchMove(
TouchState const & in_state);
4645 virtual void OnViewAttached(
HPS::View const & in_attached_view);
4646 virtual void OnViewDetached(
HPS::View const & in_attached_view);
4648 virtual void OnModelAttached();
4654 void SetReferenceSegment(
HPS::KeyPath const & in_path_to_segment);
4671 void SetTransitionTime(HPS::Time
const & in_time);
4675 HPS::Time GetTransitionTime()
const;
4685 bool operator_active;
4686 HPS::TouchID tracked_touch_ID;
4696 std::unordered_map<intptr_t, UTF8> key_to_style_map;
4698 HPS::ReferenceKeyArrayArray groups;
4701 bool suppress_mouse_over_highlights;
4705 float nav_cube_subwindow_width;
4706 float nav_cube_subwindow_height;
4708 int highlighted_group;
4711 HPS::Time transition_time;
4714 class SmoothTransitionCompleteEventHandler :
public EventHandler 4717 SmoothTransitionCompleteEventHandler(
View const & in_view,
bool & in_moving)
4718 : handler_view(in_view), handler_moving(&in_moving) {}
4720 ~SmoothTransitionCompleteEventHandler() { Shutdown(); }
4722 virtual HandleResult Handle(
HPS::Event const * in_event);
4726 bool * handler_moving;
4729 SmoothTransitionCompleteEventHandler * handler;
4735 class SceneTreeItem;
4736 typedef std::shared_ptr<SceneTreeItem> SceneTreeItemPtr;
4738 typedef std::shared_ptr<SceneTree> SceneTreePtr;
4750 GenericMask = 0xffff0000,
4752 Segment = 0x00000001,
4753 Include = 0x00000002,
4755 StaticModelSegment = 0x00000004,
4756 AttributeFilter = 0x00000005,
4758 Geometry = 0x00010000,
4763 NURBSSurface = 0x00010005,
4765 Sphere = 0x00010007,
4766 Polygon = 0x00010008,
4767 Circle = 0x00010009,
4768 CircularWedge = 0x0001000a,
4769 Ellipse = 0x0001000b,
4771 NURBSCurve = 0x0001000d,
4772 CircularArc = 0x0001000e,
4773 EllipticalArc = 0x0001000f,
4775 InfiniteRay = 0x00010011,
4778 Reference = 0x00010014,
4779 DistantLight = 0x00010015,
4782 Attribute = 0x00020000,
4783 Portfolio = 0x00020001,
4784 SegmentStyle = 0x00020002,
4785 NamedStyle = 0x00020003,
4786 MaterialPalette = 0x00020004,
4787 Priority = 0x00020005,
4790 ModellingMatrix = 0x00020008,
4791 UserData = 0x00020009,
4792 TextureMatrix = 0x0002000a,
4794 CurveAttribute = 0x0002000c,
4795 CylinderAttribute = 0x0002000d,
4796 EdgeAttribute = 0x0002000e,
4797 LightingAttribute = 0x0002000f,
4798 LineAttribute = 0x00020010,
4799 MarkerAttribute = 0x00020011,
4800 SurfaceAttribute = 0x00020012,
4802 SphereAttribute = 0x00020014,
4804 TextAttribute = 0x00020016,
4806 Visibility = 0x00020018,
4807 VisualEffects = 0x00020019,
4809 DrawingAttribute = 0x00020021,
4810 HiddenLineAttribute = 0x00020022,
4815 TransformMask = 0x00020027,
4816 ColorInterpolation = 0x00020028,
4817 CuttingSectionAttribute = 0x00020029,
4820 Debugging = 0x00020030,
4822 SelectionOptions = 0x00020032,
4823 UpdateOptions = 0x00020033,
4837 SegmentGroup = 0x00080100,
4838 GeometryGroup = 0x00080200,
4839 AttributeGroup = 0x00080300,
4840 PortfolioGroup = 0x00080400,
4841 StyleGroup = 0x00080500,
4842 IncludeGroup = 0x00080600,
4843 DefinitionGroup = 0x00180000,
4844 NamedStyleDefinitionGroup = 0x00180700,
4845 TextureDefinitionGroup = 0x00180800,
4846 LinePatternDefinitionGroup = 0x00180900,
4847 GlyphDefinitionGroup = 0x00180a00,
4848 CubeMapDefinitionGroup = 0x00180b00,
4849 ImageDefinitionGroup = 0x00180c00,
4850 MaterialPaletteDefinitionGroup = 0x00180d00,
4851 LegacyShaderDefinitionGroup = 0x00180e00,
4852 ShapeDefinitionGroup = 0x00180f00,
4853 GeometryGroupMask = 0x00280000,
4854 CuttingSectionGroup = 0x00280001,
4855 ShellGroup = 0x00280002,
4856 MeshGroup = 0x00280003,
4857 GridGroup = 0x00280004,
4858 NURBSSurfaceGroup = 0x00280005,
4859 CylinderGroup = 0x00280006,
4860 SphereGroup = 0x00280007,
4861 PolygonGroup = 0x00280008,
4862 CircleGroup = 0x00280009,
4863 CircularWedgeGroup = 0x0028000a,
4864 EllipseGroup = 0x0028000b,
4865 LineGroup = 0x0028000c,
4866 NURBSCurveGroup = 0x0028000d,
4867 CircularArcGroup = 0x0028000e,
4868 EllipticalArcGroup = 0x0028000f,
4869 InfiniteLineGroup = 0x00280010,
4870 InfiniteRayGroup = 0x00280011,
4871 MarkerGroup = 0x00280012,
4872 TextGroup = 0x00280013,
4873 ReferenceGroup = 0x00280014,
4874 DistantLightGroup = 0x00280015,
4875 SpotlightGroup = 0x00280016,
4895 static const HPS::Type staticType = HPS::Type::SceneTree;
4911 virtual void Assign(
SceneTree const & in_that);
4916 bool Equals(
SceneTree const & in_that)
const;
4921 bool operator!=(
SceneTree const & in_that)
const;
4926 bool operator==(
SceneTree const & in_that)
const;
4948 void SetHighlightOptions(HighlightOptionsKitArray
const & in_options);
4973 HighlightOptionsKitArray GetHighlightOptions()
const;
4980 void SetGroupingLimit(
size_t in_limit);
4984 size_t GetGroupingLimit()
const;
4993 void SetRoot(SceneTreeItemPtr
const & in_root);
4997 SceneTreeItemPtr GetRoot()
const;
5002 virtual void Flush();
5008 void SetHighlightEventHandling(
bool in_state);
5013 bool GetHighlightEventHandling()
const;
5076 static const HPS::Type staticType = HPS::Type::SceneTreeItem;
5112 SceneTreePtr GetTree()
const;
5116 UTF8 GetTitle()
const;
5137 bool HasChildren()
const;
5148 virtual SceneTreeItemPtr AddChild(
Key const & in_key,
SceneTree::ItemType in_type,
char const * in_title =
nullptr) = 0;
5153 virtual void Expand();
5157 virtual void Collapse();
5164 bool IsSelected()
const;
5171 virtual void Select();
5178 virtual void Unselect();
5184 bool IsHighlightable()
const;
5191 bool IsHighlighted()
const;
5197 void Highlight(
size_t in_highlight_options_index = 0);
5211 void Unhighlight(
size_t in_highlight_options_index = 0);
5223 bool IsExpanded()
const;
5232 class ComponentTreeItem;
5233 typedef std::shared_ptr<ComponentTreeItem> ComponentTreeItemPtr;
5234 class ComponentTree;
5235 typedef std::shared_ptr<ComponentTree> ComponentTreePtr;
5251 ExchangeAnnotationViewGroup,
5280 static const HPS::Type staticType = HPS::Type::ComponentTree;
5333 void SetHighlightOptions(HighlightOptionsKitArray
const & in_options);
5360 HighlightOptionsKitArray GetHighlightOptions()
const;
5369 void SetRoot(ComponentTreeItemPtr
const & in_root);
5373 ComponentTreeItemPtr GetRoot()
const;
5378 virtual void Flush();
5388 void SetHighlightEventHandling(
bool in_state);
5393 bool GetHighlightEventHandling()
const;
5430 static const HPS::Type staticType = HPS::Type::ComponentTreeItem;
5467 ComponentTreePtr GetTree()
const;
5471 UTF8 GetTitle()
const;
5483 bool HasChildren()
const;
5502 virtual void Expand();
5506 virtual void Collapse();
5516 bool IsHighlighted()
const;
5535 void Highlight(
size_t in_highlight_options_index = 0);
5548 void Unhighlight(
size_t in_highlight_options_index = 0);
5573 bool IsHidden()
const;
5580 virtual void OnHide();
5587 virtual void OnShow();
5639 void ResetVisibility();
5643 bool IsExpanded()
const;
5674 static const HPS::Type staticType = HPS::Type::AnimationControl;
5683 void SetMillisecondsPerTick(Time
const & in_duration);
5687 Time GetMillisecondsPerTick()
const;
5696 void Play(uint32_t in_start_tick, uint32_t in_end_tick);
5723 void SetAnimation(
Animation const & in_animation);
5731 void SetAnimations(
size_t in_count,
Animation const *
const in_animations);
5739 void SetAnimations(AnimationArray
const & in_animations);
5744 bool ShowAnimations(AnimationArray & out_animations);
ComponentIsolatedEvent(Event const &in_event)
Definition: sprk.h:3637
ChannelType
Definition: sprk.h:763
ComponentHighlightEvent(Event const &in_event)
Definition: sprk.h:3698
virtual bool OnTimerTick(HPS::TimerTickEvent const &in_event)
Definition: sprk.h:2042
HPS::Type ObjectType() const
Definition: sprk.h:483
ComponentHighlightEvent()
Definition: sprk.h:3678
void SetModifierTrigger(ModifierKeys in_modifiers)
Definition: sprk.h:2070
CameraChangedEvent(Event const &in_event)
Definition: sprk.h:1862
virtual bool OnKeyDown(KeyboardState const &in_state)
Definition: sprk.h:2027
std::vector< SegmentKey, Allocator< SegmentKey > > SegmentKeyArray
Array of type HPS::SegmentKey.
Definition: hps.h:6888
An InvalidSpecificationException is thrown when a method is called with non-sensical or contradictory...
Definition: hps.h:6064
Location
Definition: sprk.h:2301
Event * Clone() const override
Definition: sprk.h:3517
HPS::Type ObjectType() const
Definition: sprk.h:693
virtual bool OnKeyUp(KeyboardState const &in_state)
Definition: sprk.h:2032
ItemType
Definition: sprk.h:5244
Event * Clone() const
Definition: sprk.h:1552
CaptureActivationEvent()
Definition: sprk.h:3877
HPS::Type ObjectType() const
Definition: sprk.h:3066
PathType
Definition: sprk.h:3031
virtual bool OnMouseMove(MouseState const &in_state)
Definition: sprk.h:1992
virtual bool OnMouseEnter(MouseState const &in_state)
Definition: sprk.h:2002
Event * Clone() const
Definition: sprk.h:4569
intptr_t GetChannel() const
Definition: hps.h:6577
Event * Clone() const override
Definition: sprk.h:3654
virtual bool Drop(Event const *in_that_event) const
Definition: sprk.h:1875
virtual intptr_t Freshen() const
Definition: sprk.h:1885
ModelDeletedEvent()
Definition: sprk.h:1804
Event * Clone() const override
Definition: sprk.h:3717
SmoothTransitionCompleteEvent(HPS::View const &in_view)
Definition: sprk.h:4551
std::vector< KeyPath, Allocator< KeyPath > > KeyPathArray
Array of type HPS::KeyPath.
Definition: hps.h:6926
virtual bool OnTouchUp(TouchState const &in_state)
Definition: sprk.h:2017
virtual UTF8 GetName() const
Definition: sprk.h:1977
HPS::Type ObjectType() const
Definition: sprk.h:3945
HPS::Type ObjectType() const
Definition: sprk.h:553
bool HasAll(MouseButtons in_mouse_trigger, ModifierKeys in_modifier_trigger) const
Definition: sprk_ops.h:20
virtual void OnModelDetached()
Definition: sprk.h:2058
SmoothTransitionCompleteEvent(Event const &in_event)
Definition: sprk.h:4556
void SetMouseTrigger(MouseButtons in_buttons)
Definition: sprk.h:2061
HPS::Type ObjectType() const
Definition: sprk.h:623
virtual HPS::UTF8 GetName() const
Definition: sprk.h:4612
Event * Clone() const override
Definition: sprk.h:3561
CameraChangedEvent()
Definition: sprk.h:1847
SprocketKit & operator=(SprocketKit &&in_that)
Definition: sprk.h:1092
virtual void OnViewAttached(HPS::View const &in_attached_view)
Definition: sprk.h:2046
HPS::Type ObjectType() const
Definition: sprk.h:1954
HPS::Type ObjectType() const
Definition: sprk.h:1410
ViewDetachedEvent(Event const &in_event)
Definition: sprk.h:1682
HPS::Type ObjectType() const
Definition: sprk.h:5431
LayoutDeletedEvent()
Definition: sprk.h:1610
HPS::Type ObjectType() const
Definition: sprk.h:944
HPS::Type ObjectType() const
Definition: sprk.h:3754
LayoutDetachedEvent()
Definition: sprk.h:1565
Event * Clone() const
Definition: sprk.h:3819
MouseButtons GetMouseTrigger() const
Definition: sprk.h:2065
virtual bool OnMouseLeave(MouseState const &in_state)
Definition: sprk.h:2007
Event * Clone() const
Definition: sprk.h:1790
SmoothTransitionCompleteEvent()
Definition: sprk.h:4546
HPS::Type ObjectType() const
Definition: sprk.h:1325
virtual bool OnMouseUp(MouseState const &in_state)
Definition: sprk.h:1987
FilterActivationEvent()
Definition: sprk.h:3788
virtual void OnModelAttached()
Definition: sprk.h:2054
ComponentPath & PushBack(Component const &in_component)
FilterActivationEvent(Event const &in_event)
Definition: sprk.h:3802
HPS::Type ObjectType() const
Definition: sprk.h:3854
ModelDetachedEvent(Event const &in_event)
Definition: sprk.h:1774
HPS::Type ObjectType() const
Definition: sprk.h:1914
Location
Definition: sprk.h:2518
HPS::Type ObjectType() const
Definition: sprk.h:1111
HPS::Type ObjectType() const
Definition: sprk.h:2775
SprocketControl & operator=(SprocketControl &&in_that)
Definition: sprk.h:1064
CaptureActivationEvent(Event const &in_event)
Definition: sprk.h:3891
virtual bool OnTouchDown(TouchState const &in_state)
Definition: sprk.h:2012
CanvasDeletedEvent()
Definition: sprk.h:1522
virtual bool OnMouseWheel(MouseState const &in_state)
Definition: sprk.h:1997
SprocketControl(SprocketControl &&in_that)
Definition: sprk.h:1059
HPS::Type ObjectType() const
Definition: sprk.h:5077
Event * Clone() const
Definition: sprk.h:1700
ViewDeletedEvent()
Definition: sprk.h:1716
SprocketKit(SprocketKit &&in_that)
Definition: sprk.h:1087
virtual bool OnTextInput(HPS::UTF8 const &in_text)
Definition: sprk.h:2037
The ComponentPath contains only components which are unique to this request, omitting ambiguous entri...
HPS::Type ObjectType() const
Definition: sprk.h:2330
HPS::Type ObjectType() const
Definition: sprk.h:2547
ViewDeletedEvent(Event const &in_event)
Definition: sprk.h:1731
ModifierKeys GetModifierTrigger() const
Definition: sprk.h:2073
Event * Clone() const
Definition: sprk.h:1892
ViewDetachedEvent()
Definition: sprk.h:1660
HPS::Type ObjectType() const
Definition: sprk.h:1047
std::vector< UTF8, Allocator< UTF8 > > UTF8Array
Array of type HPS::UTF8.
Definition: hps.h:6894
Event * Clone() const
Definition: sprk.h:1596
CanvasDeletedEvent(Event const &in_event)
Definition: sprk.h:1537
HPS::Type ObjectType() const
Definition: sprk.h:1075
std::shared_ptr< Operator > OperatorPtr
Shared pointer to an Operator object.
Definition: sprk.h:308
ComponentType
Definition: sprk.h:2660
std::vector< Key, Allocator< Key > > KeyArray
Array of type HPS::Key.
Definition: hps.h:6898
Event * Clone() const
Definition: sprk.h:1834
LayoutDetachedEvent(Event const &in_event)
Definition: sprk.h:1580
virtual bool OnMouseDown(MouseState const &in_state)
Definition: sprk.h:1982
ItemType
Definition: sprk.h:4747
HPS::Type ObjectType() const
Definition: sprk.h:2171
Event * Clone() const
Definition: sprk.h:1746
DeleteMode
Definition: sprk.h:2752
virtual void OnViewDetached(HPS::View const &in_detached_view)
Definition: sprk.h:2050
HPS::Type ObjectType() const
Definition: sprk.h:407
ModelDetachedEvent()
Definition: sprk.h:1759
HPS::Type ObjectType() const
Definition: sprk.h:776
UpdateType
Definition: hps.h:201
Event * Clone() const
Definition: sprk.h:1640
virtual bool IsMouseTriggered(MouseState const &in_state)
Definition: sprk.h:2076
Event * Clone() const
Definition: sprk.h:3907
ModelDeletedEvent(Event const &in_event)
Definition: sprk.h:1819
InterpolationType
Definition: sprk.h:353
ComponentIsolatedEvent()
Definition: sprk.h:3622
HPS::Type ObjectType() const
Definition: sprk.h:5675
LayoutDeletedEvent(Event const &in_event)
Definition: sprk.h:1625
HPS::Type ObjectType() const
Definition: sprk.h:362
virtual bool OnTouchMove(TouchState const &in_state)
Definition: sprk.h:2022
virtual HPS::Type ObjectType() const
Definition: sprk.h:4896
virtual bool Drop(Event const *in_that_event) const
Definition: sprk.h:4578
HPS::Type ObjectType() const
Definition: sprk.h:836
Mode
Definition: sprk.h:1025
virtual HPS::Type ObjectType() const
Definition: sprk.h:5281
virtual HPS::UTF8 GetName() const
Definition: sprk.h:4485
Event * Clone() const override
Definition: sprk.h:3605