46 lines
737 B
C++
46 lines
737 B
C++
|
|
/* RJPointer.h */
|
|
|
|
#ifndef ROKOJORI__POINTER_H
|
|
#define ROKOJORI__POINTER_H
|
|
|
|
#include "./RJGodotHeaders.h"
|
|
#include "./RJCaster.h"
|
|
#include "./RJPointable.h"
|
|
#include "scene/3d/node_3d.h"
|
|
|
|
template<typename Type> class Ref;
|
|
class RJPointable;
|
|
|
|
|
|
class RJPointer : public Node3D
|
|
{
|
|
GDCLASS( RJPointer, Node3D );
|
|
|
|
protected:
|
|
static void _bind_methods();
|
|
|
|
|
|
|
|
// caster : RJCaster*
|
|
RJCaster* caster = nullptr;
|
|
|
|
public:
|
|
|
|
|
|
// caster : RJCaster*
|
|
RJCaster* get_caster() const; void set_caster( RJCaster* p_caster );
|
|
|
|
// getPointable( int index ) : Ref<RJPointable>
|
|
GDVIRTUAL1R( Ref<RJPointable>, getPointable, int );
|
|
|
|
// Constructor
|
|
RJPointer();
|
|
|
|
// Destructor
|
|
~RJPointer();
|
|
};
|
|
|
|
|
|
#endif // ROKOJORI__POINTER_H
|