arsa  2.7
arsa.h
Go to the documentation of this file.
1 #ifndef __ARSA_H__
2 #define __ARSA_H__
3 
5 #define ARSA_VERSION_MAJOR 2
6 #define ARSA_VERSION_MINOR 7
7 #define ARSA_VERSION_REVISION 0
8 #define ARSA_SDK_VERSION "2.7"
9 
59 #include "arsa_begin_code.h"
60 #include <SDL/SDL_main.h>
61 #include <irrlicht.h>
62 #include <arsa_xml.h>
63 #include <CARSAInput.h>
64 #include <CARSAPsd.h>
65 #include <CARSASpine.h>
66 #include <CARSADPad.h>
67 #include <CAVSceneNode.h>
68 #include <cdxsnd.h>
69 #include <cdxlottie.h>
70 #include <poly.h>
71 #include <arsa_pak.h>
72 
73 //==========================================================
75 //==========================================================
89 extern ARSA_API CDXSnd* g_snd;
91 
92 //==========================================================
94 //==========================================================
95 typedef void arsaFunc(void);
96 typedef void arsaFuncLoading(const char* filename, const char* msg, void* userdata, int num, int count );
99 extern ARSA_API void ARSACALLCONV arsa_Init(irr::IrrlichtDevice* device, const irr::core::dimension2du& screensize = irr::core::dimension2du(960, 640));
100 extern ARSA_API void ARSACALLCONV arsa_Quit( );
102 extern ARSA_API void ARSACALLCONV arsa_Clear();
108 //extern ARSA_API void ARSACALLCONV arsa_SetRedeemCode(const irr::core::stringc& code );
111 extern ARSA_API void ARSACALLCONV arsa_SetSplashScreen( const irr::io::path& filename );
112 extern ARSA_API void ARSACALLCONV arsa_SetPortrait( bool flip = true );
113 extern ARSA_API void ARSACALLCONV arsa_SetPortraitLandscape(bool flip = true);
114 extern ARSA_API void ARSACALLCONV arsa_SetLandscape( bool flip = true );
115 extern ARSA_API bool ARSACALLCONV arsa_IsPortrait( );
116 extern ARSA_API bool ARSACALLCONV arsa_IsLandscape( );
117 extern ARSA_API bool ARSACALLCONV arsa_IsMaskOk();
118 extern ARSA_API void ARSACALLCONV arsa_MaskShow(bool show);
133 extern ARSA_API void ARSACALLCONV arsa_SetFuncLoading(arsaFuncLoading* func, void* userdata = 0);
134 extern ARSA_API void ARSACALLCONV arsa_NowLoading(const char* filename, const char* msg, int num = -1, int count = -1 );
135 extern ARSA_API bool ARSACALLCONV arsa_GetOutside( );
136 extern ARSA_API void ARSACALLCONV arsa_SetOutside( bool out );
144 extern ARSA_API bool ARSACALLCONV arsa_Run();
146 extern ARSA_API void ARSACALLCONV arsa_Begin();
148 extern ARSA_API void ARSACALLCONV arsa_End();
151 extern ARSA_API void ARSACALLCONV arsa_SetFPS( irr::u16 fps = 60 );
152 extern ARSA_API int ARSACALLCONV arsa_GetFPS();
161 
172 extern ARSA_API bool ARSACALLCONV arsa_GetGdpr();
174 extern ARSA_API void ARSACALLCONV arsa_Delay( irr::u32 millisec );
175 
195 extern ARSA_API bool ARSACALLCONV arsa_OpenNowLoading( const irr::io::path& psd_filename, bool psd_only = true );
197 
204 
208 extern ARSA_API irr::u8* ARSACALLCONV arsa_OpenFileToMemory(const irr::io::path& my_url, irr::u32& out_len );
210 
212 extern ARSA_API void ARSACALLCONV arsa_FreeFileToMemory( void** dead );
213 
217 extern ARSA_API bool ARSACALLCONV arsa_SaveFileFromMemory(const irr::io::path& filename, const irr::core::stringc& in_buf, irr::u32 custom_size = 0 );
218 
220 extern ARSA_API irr::io::IReadFile* ARSACALLCONV arsa_OpenFileFromServer( const irr::io::path& my_url, bool usemem = true, const irr::io::path& filename_ex = irr::io::path() );
221 extern ARSA_API bool ARSACALLCONV arsa_Download(const irr::io::path& my_url, const irr::io::path& filename_ex = irr::io::path(), irr::u32 download_size_byte = 0 );
226 extern ARSA_API bool ARSACALLCONV arsa_IsUrl(const irr::io::path& my_url);
227 extern ARSA_API bool ARSACALLCONV arsa_ExistFile(const irr::io::path& filename);
230 extern ARSA_API irr::io::IWriteFile* ARSACALLCONV arsa_CreateAndWriteFile(const irr::io::path& filename, bool append = false );
232 extern ARSA_API irr::io::IReadFile* ARSACALLCONV arsa_CreateMemoryReadFile(const void *memory, irr::s32 len, const irr::io::path &fileName, bool deleteMemoryWhenDropped = false);
234 extern ARSA_API irr::io::path ARSACALLCONV arsa_GetFile(const irr::io::path& filename, bool keepExtension = true);
236 extern ARSA_API int ARSACALLCONV arsa_fprintf(irr::io::IWriteFile* fp, const char *str, ...);
237 extern ARSA_API bool ARSACALLCONV arsa_Zip(const void* unzip, irr::u32 size, irr::core::array<irr::u8>& out_zip);
238 extern ARSA_API bool ARSACALLCONV arsa_UnZip(const void* zip, irr::u32 size, irr::core::array<irr::u8>& out_unzip);
239 extern ARSA_API bool ARSACALLCONV arsa_ZipToFile(const void* unzip, irr::u32 size, const irr::io::path& filename );
240 extern ARSA_API bool ARSACALLCONV arsa_UnZipFromFile(const irr::io::path& filename, irr::core::array<irr::u8>& out_unzip);
241 extern ARSA_API bool ARSACALLCONV arsa_OpenXml(const irr::io::path& filename, arsa_xml_doc& out_doc );
242 extern ARSA_API bool ARSACALLCONV arsa_DeleteFile(const irr::io::path& filename );
246 extern ARSA_API bool ARSACALLCONV arsa_IsDriveLetter( const irr::io::path& filename );
250 
251 //==========================================================
253 //==========================================================
255 extern ARSA_API void ARSACALLCONV arsa_AddQueueRendering(irr::u32 mb_id, const irr::scene::IMeshBuffer* mb, irr::u32 order = 0, const irr::core::matrix4* world = 0, bool needFreeMem = false, const irr::core::rectf* cliprect = 0, const irr::core::array<irr::video::IVideoDriver::SShaderConstant>* sv = 0 );
257 extern ARSA_API void ARSACALLCONV arsa_DrawQueueRendering( bool auto_clear = true );
260 
266  irr::scene::IMeshBuffer& in_out_mb,
267  irr::video::IVideoDriver *driver,
269  const irr::core::rect<irr::s32>& sourceRect,
270  const irr::core::position2di& position,
271  const irr::core::position2di& rotationPoint = irr::core::position2di(0,0),
272  irr::f32 rotation = 0,
274  const irr::video::SColor& color = irr::video::SColor(255,255,255,255));
275 
277 extern ARSA_API void ARSACALLCONV arsa_DrawOnce(int x, int y, irr::video::ITexture* tex);
278 
284 extern ARSA_API void ARSACALLCONV arsa_DrawAllOnce(bool device_run = true, bool include_begin_end = true, arsaFunc* hud = 0 );
285 
289 
292 
295 
298 
314  irr::video::IVideoDriver *driver,
316  const irr::core::rect<irr::s32>& sourceRect,
317  const irr::core::position2d<irr::s32>& position,
318  const irr::core::position2d<irr::s32>& rotationPoint,
319  irr::f32 rotation,
321  bool useAlphaChannel,
322  const irr::video::SColor& color);
323 
325 // https://stackoverflow.com/questions/14514543/opengl-es-2-0-dynamically-change-line-width
326 extern ARSA_API void ARSACALLCONV arsa_Line2D(int x1, int y1, int x2, int y2, int W, bool fill, const irr::video::SColor& color, irr::video::ITexture* tex, irr::video::E_MATERIAL_TYPE shader);
327 
331 extern ARSA_API void ARSACALLCONV arsa_Poly2D(irr::core::position2di center, irr::f32 radius, bool fill, irr::video::SColor color, irr::s32 count, irr::video::ITexture* tex, irr::video::E_MATERIAL_TYPE shader, int start_percent, int end_percent);
332 
333 //==========================================================
335 //==========================================================
340 
341 //==========================================================
343 //==========================================================
345 extern ARSA_API void ARSACALLCONV arsa_Log( const char *str, ...);
347 extern ARSA_API void ARSACALLCONV arsa_MsgBox( char *str, ... );
349 extern ARSA_API void ARSACALLCONV arsa_AddLogs( int x, int y, char *str, ... );
351 extern ARSA_API void ARSACALLCONV arsa_ClearLogs( );
353 extern ARSA_API void ARSACALLCONV arsa_DrawLogs( irr::gui::IGUIFont* font = 0, bool auto_clear = true );
355 extern ARSA_API void ARSACALLCONV debug_printf( const char *str, ... );
356 
357 //==========================================================
359 //==========================================================
363 extern ARSA_API void ARSACALLCONV arsa_printc(irr::core::stringc& out_c, char *str, ...);
364 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_printc(const char *str, ...);
367  irr::core::vector3df& inout_point,
368  const irr::core::vector3df& pivot,
369  const irr::core::matrix4& m);
372 extern ARSA_API void ARSACALLCONV arsa_GetInt(const irr::core::stringc& keys, irr::core::array<int>& out_ints);
377 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_RandString(irr::u32 len, bool number_only = false );
387 extern ARSA_API bool ARSACALLCONV arsa_IsString(const irr::core::stringc& value, irr::s32* out_start = 0, irr::s32* out_end = 0);
389 extern ARSA_API bool ARSACALLCONV arsa_IsSpace(const char value);
393 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_FloatToString(const double number);
399 extern ARSA_API void ARSACALLCONV arsa_SkipWhite(irr::core::stringc& str, const irr::core::stringc& replace = irr::core::stringc(" \t\n\r\0"));
401 extern ARSA_API int ARSACALLCONV arsa_CountChar(const irr::core::stringc& s, char cc);
403 extern ARSA_API bool ARSACALLCONV arsa_IsWhiteSpace(const irr::c8 ch, const irr::core::stringc& replace = irr::core::stringc(" \t\n\r\0"));
412 extern ARSA_API irr::u32 ARSACALLCONV arsa_TokenString(const irr::core::stringc& str, irr::core::array<irr::core::stringc>& out_str, const irr::core::stringc& tok_chars = " |,", bool use_all_tok_chars = false );
415 extern ARSA_API bool ARSACALLCONV arsa_IsMathFunction(const irr::core::stringc& expression, irr::s32 start = 0, irr::s32* out_pos = 0);
418 extern ARSA_API bool ARSACALLCONV arsa_Calculation( const irr::core::stringc& expression, double& out_value);
421 extern ARSA_API bool ARSACALLCONV arsa_Calculation(const irr::core::stringc& expression, irr::core::stringc& out_value_str);
437 extern ARSA_API bool ARSACALLCONV arsa_TokenStringBetween(const irr::core::stringc& str, irr::core::stringc& out_str, irr::c8 tok_char_start = '"', irr::c8 tok_char_end = '"');
439 extern ARSA_API bool ARSACALLCONV arsa_IsUTF8(const irr::core::stringc& str);
441 
447 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_MakeGUID( bool with_letter = true );
448 
452 
455 
462 
464 extern ARSA_API void ARSACALLCONV arsa_BeginMask( bool clear = true, bool clear_depth = true );
465 extern ARSA_API void ARSACALLCONV arsa_EndMask();
468 extern ARSA_API void ARSACALLCONV arsa_LoadMask();
469 extern ARSA_API void ARSACALLCONV arsa_SetFeature( bool mipmap, bool memcpy );
472 extern ARSA_API bool ARSACALLCONV arsa_GetPcxPal( const irr::io::path& filename, irr::u8 idx, irr::video::SColor& out_pal );
473 extern ARSA_API irr::video::ITexture* ARSACALLCONV arsa_GetTexture( const irr::io::path& Filename, bool use_mem = false );
474 
475 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_Base64Encode(const unsigned char* src, size_t len);
476 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_Base64Decode(const void* data, const size_t len);
479 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_MD5(const unsigned char* src, size_t len);
480 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_SHA256(const unsigned char* src, size_t len);
481 
482 //==========================================================
484 //==========================================================
487 extern ARSA_API bool ARSACALLCONV arsa_RemoveFont(const irr::io::path& filename, irr::u32 size);
491 extern ARSA_API void ARSACALLCONV arsa_DrawQueueFont( bool auto_clear = true );
495  int x, int y, const irr::core::stringw& text,
497  const irr::video::SColor& color = irr::video::SColor(0xffffffff));
500  const irr::core::stringw& text, const irr::core::rect<irr::s32>& position,
501  irr::video::SColor color = irr::video::SColor(0xffffffff), bool hcenter = false,
502  bool vcenter = false, const irr::core::rect<irr::s32>* clip = 0);
505  irr::arsa::CARSAPsd* psd,
506  const irr::core::stringc& layer_name,
507  irr::gui::IGUIFont* font,
508  const irr::core::stringw& text,
510  const irr::video::SColor& color = irr::video::SColor(0xffffffff));
512  irr::arsa::CARSAPsd* psd,
513  const irr::core::stringc& layer_name,
514  const irr::core::stringc& area_layer_name,
515  irr::gui::IGUIFont* font,
516  const irr::core::stringw& text,
518  const irr::video::SColor& color = irr::video::SColor(0xffffffff));
519 
522  irr::video::IImage* src, irr::video::ITexture* dead, const irr::io::path& filename);
523 
527 
528 // resizeimg.cpp
529 extern ARSA_API bool ARSACALLCONV arsa_ResizeImg(const irr::io::path& filename, const irr::io::path& new_filename, const irr::core::dimension2du& new_size);
530 
533 
536 
537 //==========================================================
538 // platform
539 // !!!below code MUST avaliable ever platform each!!!
540 // source into arsa_xxx.cpp eg. arsa_win32.cpp, arsa_android.cpp
541 //==========================================================
543 extern ARSA_API void arsa_PlatformInit();
544 
546 extern ARSA_API void ARSACALLCONV arsa_GetUUIDAndPackage(irr::core::stringc& out_uuid, irr::core::stringc& out_package_name);
547 
553 
554 // arsa comerce, avaliable even if license to be commercial.
556 {
559  EAIF_CLOSED = 4, // close ad
560  EAIF_OPENED = 8, // notuse!
562  EAIF_LEFT_APP = 32 // click ad
563 };
564 
567 
570 extern ARSA_API void ARSACALLCONV adInt_Init(const char* unit_id);
575 extern ARSA_API int ARSACALLCONV adInt_Show();
576 
578 extern ARSA_API void ARSACALLCONV ad_Init(const char* unit_id, bool align_top = true);
579 extern ARSA_API void ARSACALLCONV ad_Free();
580 extern ARSA_API bool ARSACALLCONV ad_SetVisible(bool visible = true);
581 
583 extern ARSA_API void ARSACALLCONV iap_Init(const irr::core::stringc& key);
584 extern ARSA_API void ARSACALLCONV iap_Free();
586 extern ARSA_API bool ARSACALLCONV iap_Buy(const irr::core::stringc& item_name);
589 
591 
597 extern ARSA_API bool ARSACALLCONV arsa_OpenURL(const irr::core::stringc& url, bool webapp = false, bool use_webbrowser = false);
598 
600 extern ARSA_API bool ARSACALLCONV arsa_PhoneCall(const irr::core::stringc& phonenumber);
601 
603 extern ARSA_API bool ARSACALLCONV arsa_ShareFile(const irr::core::stringc& mailto, const irr::core::stringc& subject, const irr::core::stringc& msg, const irr::core::stringc& filename);
604 
607 
610 extern ARSA_API irr::core::stringc ARSACALLCONV arsa_SaveScreenShot( bool silent = false );
611 
615 
616 extern ARSA_API void ARSACALLCONV arsa_Notify(const char *str, ...);
617 
621 
625 
628 
631 extern ARSA_API bool ARSACALLCONV arsa_voiceStart(const irr::io::path& filename);
632 extern ARSA_API void ARSACALLCONV arsa_voiceStop();
635 
636 //==========================================================
637 // platform
638 //==========================================================
639 
640 #endif // __ARSA_H__
ARSA_API void ARSACALLCONV arsa_SetOffset(const irr::core::vector3df &offset)
ARSA_API void ARSACALLCONV arsa_AddQueueRendering(irr::u32 mb_id, const irr::scene::IMeshBuffer *mb, irr::u32 order=0, const irr::core::matrix4 *world=0, bool needFreeMem=false, const irr::core::rectf *cliprect=0, const irr::core::array< irr::video::IVideoDriver::SShaderConstant > *sv=0)
GLenum GLenum GLenum GLenum GLenum scale
ARSA_API irr::scene::ISceneManager * g_smgr
ARSA_API irr::core::stringc ARSACALLCONV arsa_SHA256(const unsigned char *src, size_t len)
ARSA_API irr::core::stringw ARSACALLCONV arsa_ConvertToStringW(const irr::core::stringc &str)
The FileSystem manages files and archives and provides access to them.
Definition: IFileSystem.h:32
ARSA_API bool ARSACALLCONV arsa_IsMaskOk()
ARSA_API irr::gui::IGUIFont * arsa_GetBuiltInFont(irr::u32 size=0)
font
ARSA_API irr::core::stringc ARSACALLCONV arsa_ReplaceWhiteSpace(const irr::core::stringc &str)
ARSA_API irr::core::stringc ARSACALLCONV arsa_SendDataToServer(const irr::io::path &my_url, irr::io::IAttributes *att=0)
Template implementation of the IMeshBuffer interface.
Definition: CMeshBuffer.h:17
ARSA_API void ARSACALLCONV arsa_Clear()
clear all memory
ARSA_API void ARSACALLCONV ad_Init(const char *unit_id, bool align_top=true)
banner
ARSA_API void ARSACALLCONV arsa_FreeRTTex(irr::video::IVideoDriver *driver, irr::video::ITexture **tex)
free and remove ITexture from irrlicht system
ARSA_API void ARSACALLCONV arsa_CommerceInit()
init arsa commerce api each platform, don't free
ARSA_API void ARSACALLCONV iap_Init(const irr::core::stringc &key)
in-app purchase
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetUUID()
get uuid
Scene Node which is a (controllable) camera.
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetVersion()
ARSA_API bool ARSACALLCONV arsa_IsPortrait()
Provides a generic interface for attributes and their values and the possibility to serialize them.
Definition: IAttributes.h:41
GLuint GLfloat GLfloat GLfloat x1
ARSA_API irr::io::path ARSACALLCONV arsa_camera()
ARSA_API void ARSACALLCONV arsa_SetFPS(irr::u16 fps=60)
default = 60
GLuint num
ARSA_API irr::core::stringc ARSACALLCONV arsa_SaveScreenShot(bool silent=false)
ARSA_API void ARSACALLCONV arsa_EasyStart(const irr::core::stringc &code=irr::core::stringc())
Interface providing read access to a file.
Definition: IReadFile.h:18
ARSA_API irr::f32 arsa_GetPosYSoftKeyboard()
ARSA_API void ARSACALLCONV arsa_Quit()
ARSA_API void ARSACALLCONV arsa_EndMask()
E_MATERIAL_TYPE
Abstracted and easy to use fixed function/programmable pipeline material modes.
ARSA_API bool ARSACALLCONV arsa_TokenStringBetween(const irr::core::stringc &str, irr::core::stringc &out_str, irr::c8 tok_char_start='"', irr::c8 tok_char_end = '"')
Interface for generating random numbers.
Definition: IRandomizer.h:14
ARSA_API irr::core::stringc ARSACALLCONV arsa_FloatToString(const double number)
convert float to string with 3 fractional (%.3f)
ARSA_API irr::u32 ARSACALLCONV arsa_RandRange(irr::u32 nmin, irr::u32 nmax)
random number between range min -> max
ARSA_API irr::core::stringc ARSACALLCONV arsa_Base64Encode(const unsigned char *src, size_t len)
ARSA_API void ARSACALLCONV arsa_SetFuncUpdateInactive(arsaFunc *func)
ARSA_API irr::arsa::CAVSceneNode *ARSACALLCONV arsa_AddAV()
ARSA_API irr::video::ITexture *ARSACALLCONV arsa_AllocateTexture(irr::video::IVideoDriver *driver, irr::video::IImage *src, irr::video::ITexture *dead, const irr::io::path &filename)
allocate new gpu texture from system image and keep system image as buffer.
float f32
32 bit floating point variable.
Definition: irrTypes.h:108
ARSA_API void ARSACALLCONV arsa_Init2DSMeshBuffer(irr::scene::SMeshBuffer &in_out_mb)
ARSA_API irr::core::stringc ARSACALLCONV arsa_MakeGUID(bool with_letter=true)
ARSA_API bool ARSACALLCONV arsa_Calculation(const irr::core::stringc &expression, double &out_value)
ARSA_API void ARSACALLCONV arsa_SetPortrait(bool flip=true)
ARSA_API const irr::core::dimension2du &ARSACALLCONV arsa_GetWindowSize()
GLuint GLuint GLsizei count
Definition: SDL_opengl.h:1571
const GLfloat * m
ARSA_API void ARSACALLCONV arsa_SetFuncDeInit(arsaFunc *func)
ARSA_API irr::core::array< irr::io::path > ARSACALLCONV arsa_openFile()
start openfile dialog
ARSA_API irr::io::IReadFile *ARSACALLCONV arsa_CreateMemoryReadFile(const void *memory, irr::s32 len, const irr::io::path &fileName, bool deleteMemoryWhenDropped=false)
ARSA_API void ARSACALLCONV arsa_voiceStop()
ARSA_API irr::video::IImage *ARSACALLCONV arsa_CreateScreenShot()
GLuint GLuint end
Definition: SDL_opengl.h:1571
ARSA_API void ARSACALLCONV arsa_SetWindowSize(const irr::core::dimension2du &size)
GLenum GLenum GLuint texture
ARSA_API void ARSACALLCONV arsa_SetFuncUpdatePre(arsaFunc *func)
char c8
8 bit character variable.
Definition: irrTypes.h:35
GLfixed GLfixed GLfixed y2
Scene node interface.
Definition: ISceneNode.h:40
ARSA_API void ARSACALLCONV arsa_Delay(irr::u32 millisec)
delay with millisec unit
ARSA_API bool ARSACALLCONV arsa_IsFloat(const irr::core::stringc &value)
string is floating point
ARSA_API irr::core::stringc ARSACALLCONV arsa_fgets(irr::io::IReadFile *fp)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: SDL_opengl.h:1974
ARSA_API void ARSACALLCONV arsa_draw2DImage(irr::video::IVideoDriver *driver, irr::video::ITexture *texture, const irr::core::rect< irr::s32 > &sourceRect, const irr::core::position2d< irr::s32 > &position, const irr::core::position2d< irr::s32 > &rotationPoint, irr::f32 rotation, const irr::core::vector2df &scale, bool useAlphaChannel, const irr::video::SColor &color)
ARSA_API irr::core::stringc ARSACALLCONV arsa_RandString(irr::u32 len, bool number_only=false)
random string
ARSA_API void ARSACALLCONV arsa_DrawQueueRendering(bool auto_clear=true)
ARSA_API void ARSACALLCONV arsa_SetManualInput(bool enable)
ARSA_API irr::core::vector3df ARSACALLCONV arsa_clamp_vector3df(const irr::core::vector3df &value, const irr::f32 start, const irr::f32 end)
ARSA_API void ARSACALLCONV arsa_Draw2DtoMeshBuffer(irr::scene::IMeshBuffer &in_out_mb, irr::video::IVideoDriver *driver, irr::video::ITexture *texture, const irr::core::rect< irr::s32 > &sourceRect, const irr::core::position2di &position, const irr::core::position2di &rotationPoint=irr::core::position2di(0, 0), irr::f32 rotation=0, const irr::core::vector2df &scale=irr::core::vector2df(1, 1), const irr::video::SColor &color=irr::video::SColor(255, 255, 255, 255))
ARSA_API const irr::video::SColor &ARSACALLCONV arsa_GetBgColor()
ARSA_API bool ARSACALLCONV arsa_OpenURL(const irr::core::stringc &url, bool webapp=false, bool use_webbrowser=false)
open url
ARSA_API void ARSACALLCONV arsa_DrawLogs(irr::gui::IGUIFont *font=0, bool auto_clear=true)
draw log to screen
The Irrlicht device. You can create it with createDevice() or createDeviceEx().
ARSA_API bool ARSACALLCONV arsa_GetManualInput()
ARSA_API irr::IrrlichtDevice * g_device
global var
GLuint start
Definition: SDL_opengl.h:1571
ARSA_API bool ARSACALLCONV arsa_Download(const irr::io::path &my_url, const irr::io::path &filename_ex=irr::io::path(), irr::u32 download_size_byte=0)
ARSA_API irr::video::ITexture *ARSACALLCONV arsa_GetTexture(const irr::io::path &Filename, bool use_mem=false)
ARSA_API bool ARSACALLCONV arsa_ExistFile(const irr::io::path &filename)
ARSA_API bool ARSACALLCONV arsa_PhoneCall(const irr::core::stringc &phonenumber)
phone call
ARSA_API irr::ILogger * g_log
void arsaFuncLoading(const char *filename, const char *msg, void *userdata, int num, int count)
Definition: arsa.h:96
ARSA_API void ARSACALLCONV arsa_RestoreFeature()
Main header file of the irrlicht, the only file needed to include.
ARSA_API irr::core::array< irr::core::stringc > ARSACALLCONV arsa_TokenFunction(const irr::core::stringc &param)
use '(' and ')' as token
ARSA_API bool ARSACALLCONV arsa_UnZip(const void *zip, irr::u32 size, irr::core::array< irr::u8 > &out_unzip)
ARSA_API void ARSACALLCONV arsa_Init(irr::IrrlichtDevice *device, const irr::core::dimension2du &screensize=irr::core::dimension2du(960, 640))
arsa_Init must call first and arsa_Quit call when exit program
ARSA_API irr::core::stringc ARSACALLCONV arsa_StringToBinary(const irr::core::stringc &str)
ARSA_API void ARSACALLCONV arsa_DrawFontPsdArea(irr::arsa::CARSAPsd *psd, const irr::core::stringc &layer_name, const irr::core::stringc &area_layer_name, irr::gui::IGUIFont *font, const irr::core::stringw &text, irr::u32 flags=irr::arsa::EDF_DEFAULT, const irr::video::SColor &color=irr::video::SColor(0xffffffff))
GLfixed GLfixed GLint GLint order
ARSA_API bool ARSACALLCONV arsa_IsUrl(const irr::io::path &my_url)
ARSA_API void ARSACALLCONV arsa_NowLoading(const char *filename, const char *msg, int num=-1, int count=-1)
ARSA_API bool ARSACALLCONV arsa_IsInt(const irr::core::stringc &value)
string is integer
GUI Environment. Used as factory and manager of all other GUI elements.
ARSA_API bool ARSACALLCONV arsa_IsString(const irr::core::stringc &value, irr::s32 *out_start=0, irr::s32 *out_end=0)
is string between double quote
ARSA_API irr::core::stringc ARSACALLCONV arsa_UrlDecode(const irr::core::stringc &str)
ARSA_API CDXSnd * g_snd
ARSA_API irr::u32 ARSACALLCONV arsa_TokenArraySizeFromString(const irr::core::stringc &str, irr::core::stringc *out_name=0)
GLsizeiptr size
ARSA_API int ARSACALLCONV adInt_Show()
Interface providing write access to a file.
Definition: IWriteFile.h:17
GLfixed GLfixed x2
ARSA_API irr::s32 ARSACALLCONV arsa_GetArchiveType(const irr::core::stringc &archive_name)
ARSA_API bool ARSACALLCONV arsa_Run()
run timer and event
GLfloat param
GLenum GLsizei len
Interface for software image data.
Definition: IImage.h:25
ARSA_API bool ARSACALLCONV arsa_TokenArrayNameAndSize(const irr::core::stringc &str, irr::core::stringc *out_name, irr::core::stringc *out_size, irr::core::stringc *out_name_end)
Very simple string class with some useful features.
Definition: irrString.h:37
ARSA_API irr::core::stringc ARSACALLCONV arsa_MD5(const unsigned char *src, size_t len)
ARSA_API void ARSACALLCONV arsa_ClearQueueRendering()
render
ARSA_API void ARSACALLCONV arsa_FreeRT(irr::video::IVideoDriver *driver, irr::video::IRenderTarget **rt)
free and remove IRenderTarget from irrlicht system
ARSA_API void ARSACALLCONV arsa_UpdateTexture(irr::video::IVideoDriver *driver, irr::video::IImage *src, irr::video::ITexture *tex)
update gpu texture from system image.
ARSA_API void ARSACALLCONV arsa_GetUUIDAndPackage(irr::core::stringc &out_uuid, irr::core::stringc &out_package_name)
get uuid and package name
unsigned char u8
8 bit unsigned variable.
Definition: irrTypes.h:22
ARSA_API void ARSACALLCONV arsa_SetCamera2D(const irr::core::vector3df &size=irr::core::vector3df())
ARSA_API void ARSACALLCONV arsa_DrawAllOnce(bool device_run=true, bool include_begin_end=true, arsaFunc *hud=0)
GLfixed y1
ARSA_API void ARSACALLCONV arsa_RemoveQueueRendering(irr::u32 mb_id, const irr::scene::IMeshBuffer *mb, irr::u32 order)
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetScreenShotPathAndName()
get a random name of screenshot
ARSA_API bool ARSACALLCONV arsa_IsLandscape()
unsigned short u16
16 bit unsigned variable.
Definition: irrTypes.h:44
ARSA_API bool ARSACALLCONV arsa_GetAlwaysRun()
ARSA_API irr::video::ITexture *ARSACALLCONV arsa_ResizeTexture(irr::video::ITexture *tex, const irr::core::dimension2du &new_size)
arsa_ResizeTexture optional or not: to drop return a new texture pointer or call driver->removeTextur...
ARSA_API bool ARSACALLCONV arsa_IsNumber(const irr::core::stringc &value)
string are float or integer
Font interface.
Definition: IGUIFont.h:39
ARSA_API void ARSACALLCONV arsa_CloseNowLoading()
ARSA_API void ARSACALLCONV iap_Free()
ARSA_API irr::arsa::CARSAPsd * g_psd
ARSA_API irr::core::stringc ARSACALLCONV arsa_UrlEncode(const irr::core::stringc &str)
ARSA_API void ARSACALLCONV arsa_DrawQueueFont(bool auto_clear=true)
clear automatic after draw
signed int s32
32 bit signed variable.
Definition: irrTypes.h:70
ARSA_API int ARSACALLCONV arsa_GetFPS()
Struct for holding a mesh with a single material.
Definition: IMeshBuffer.h:39
GLenum GLenum GLenum input
ARSA_API irr::gui::IGUIEnvironment * g_gui
ARSA_API irr::u32 ARSACALLCONV arsa_OpenFileToMemory(const irr::io::path &my_url, irr::core::stringc &out_buf)
ARSA_API void ARSACALLCONV arsa_GetFloat(const irr::core::stringc &keys, irr::core::array< irr::f32 > &out_floats)
ARSA_API const irr::core::vector3df &ARSACALLCONV arsa_GetOffset()
ARSA_API irr::f32 ARSACALLCONV arsa_clamp_float(const irr::f32 value, const irr::f32 start, const irr::f32 end)
GLsizei const GLfloat * value
ARSA_API irr::io::path ARSACALLCONV arsa_GetWritePath(const irr::io::path &filename, irr::arsa::CARSAPsd *psd=0)
ARSA_API void ARSACALLCONV arsa_SetScreenSize(const irr::core::dimension2du &size)
ARSA_API bool ARSACALLCONV arsa_GetPcxPal(const irr::io::path &filename, irr::u8 idx, irr::video::SColor &out_pal)
ARSA_API void ARSACALLCONV arsa_RemoveAllFont()
Definition: cdxsnd.h:39
ARSA_API irr::s32 ARSACALLCONV arsa_clamp_int(const irr::s32 value, const irr::s32 start, const irr::s32 end)
utils
ARSA_API void ARSACALLCONV arsa_LoadMask()
ARSA_API bool ARSACALLCONV arsa_ShareFile(const irr::core::stringc &mailto, const irr::core::stringc &subject, const irr::core::stringc &msg, const irr::core::stringc &filename)
share text and file
ARSA_API void ARSACALLCONV arsa_RotatePointAroundPivot(irr::core::vector3df &inout_point, const irr::core::vector3df &pivot, const irr::core::matrix4 &m)
unsigned int u32
32 bit unsigned variable.
Definition: irrTypes.h:62
ARSA_API irr::io::path ARSACALLCONV arsa_GetAbsPath(const irr::io::path &filename)
ARSA_API irr::gui::IGUIFont *ARSACALLCONV arsa_GetFont(const irr::io::path &filename, irr::u32 size=28)
ARSA_API irr::io::IFileSystem * g_fs
Interface for logging messages, warnings and errors.
Definition: ILogger.h:38
Interface for getting and manipulating the virtual time.
Definition: ITimer.h:14
ARSA_API void ARSACALLCONV arsa_printc(irr::core::stringc &out_c, char *str,...)
ARSA_API void ARSACALLCONV arsa_ClearLogs()
clear log to ARSA system
ARSA_API void ARSACALLCONV arsa_SetEscExitEnable(bool enable)
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetRedeemCode()
set user redeem code
ARSA_API irr::core::vector3df ARSACALLCONV arsa_Get2DFrom3D(irr::core::vector3df pos3D)
get 2d position from 3d vector, depend on virtual screen.
ARSA_API void ARSACALLCONV arsa_GetInt(const irr::core::stringc &keys, irr::core::array< int > &out_ints)
ARSA_API void ARSACALLCONV arsa_FreeFileToMemory(void **dead)
free memory from arsa_OpenFileToMemory().
ARSA_API const irr::core::dimension2du &ARSACALLCONV arsa_GetScreenSize()
ARSA_API void ARSACALLCONV arsa_Line2D(int x1, int y1, int x2, int y2, int W, bool fill, const irr::video::SColor &color, irr::video::ITexture *tex, irr::video::E_MATERIAL_TYPE shader)
Draws line 2d with thickness.
ARSA_API bool ARSACALLCONV arsa_IsSpace(const char value)
is space on this char \0 \t \v \f \r
ARSA_API bool ARSACALLCONV ad_SetVisible(bool visible=true)
ARSA_API irr::core::stringc ARSACALLCONV arsa_BinaryToString(const irr::core::stringc &bin)
ARSA_API void ARSACALLCONV arsa_GetVector2df(const irr::core::stringc &keys, irr::core::array< irr::core::vector2df > &out_vectors)
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetHtmlParams(irr::io::IAttributes *att)
GLint GLint GLint GLint GLint GLint y
Definition: SDL_opengl.h:1574
ARSA_API irr::core::stringc ARSACALLCONV arsa_PackageName()
get packagename
ARSA_API bool ARSACALLCONV arsa_IsFloatFractional(double value)
float is has fractional e.g. 1.056
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetUserString()
get user string
ARSA_API irr::s32 ARSACALLCONV arsa_StringFind(const irr::core::stringc &src, const irr::core::stringc &str, irr::u32 start, bool reverse)
ARSA_API bool ARSACALLCONV arsa_IsUTF8(const irr::core::stringc &str)
check string is utf-8 encoding
Interface to driver which is able to perform 2d and 3d graphics functions.
Definition: IVideoDriver.h:151
ARSA_API void ARSACALLCONV arsa_SetSplashScreen(const irr::io::path &filename)
ARSA_API void ARSACALLCONV arsa_SetFeature(bool mipmap, bool memcpy)
ARSA_API bool ARSACALLCONV arsa_IsMaskShow()
ARSA_API void ARSACALLCONV arsa_SetFuncUpdatePost(arsaFunc *func)
ARSA_API irr::scene::ICameraSceneNode *ARSACALLCONV arsa_AddCameraSceneNodeFPSTouch(irr::CARSAInput &input, irr::f32 speed=200, irr::f32 rot=100)
ARSA_API void ARSACALLCONV arsa_AddLogs(int x, int y, char *str,...)
add log to ARSA system and draw on screen with arsa_DrawLogs()
ARSA_API void ARSACALLCONV arsa_SetBgColor(const irr::video::SColor &color)
ARSA_API irr::io::path ARSACALLCONV arsa_GetFile(const irr::io::path &filename, bool keepExtension=true)
ARSA_API void ARSACALLCONV arsa_DrawOnce(int x, int y, irr::video::ITexture *tex)
draw a texture immediately on screen, included begin, end
ARSA_API irr::arsa::CARSAPsd * g_mask_psd
ARSA_API irr::video::IVideoDriver * g_driver
ARSA_API void ARSACALLCONV arsa_DrawFont(irr::gui::IGUIFont *font, int x, int y, const irr::core::stringw &text, irr::u32 flags=irr::arsa::EDF_DEFAULT, const irr::video::SColor &color=irr::video::SColor(0xffffffff))
ARSA_API irr::arsa::CARSADPad * g_dpad
Class representing a 32 bit ARGB color.
Definition: SColor.h:316
ARSA_API bool ARSACALLCONV arsa_IsMathFunction(const irr::core::stringc &expression, irr::s32 start=0, irr::s32 *out_pos=0)
ARSA_API irr::CARSAInput * g_input
ARSA_API void ARSACALLCONV arsa_Log(const char *str,...)
log
ARSA_API bool ARSACALLCONV arsa_GetOutside()
GLenum target
ARSA_API bool ARSACALLCONV arsa_GetGdpr()
user agreed GDPR
ARSA_API bool ARSACALLCONV arsa_eof(irr::io::IReadFile *fp)
4x4 matrix. Mostly used as transformation matrix for 3d calculations.
Definition: matrix4.h:45
ARSA_API irr::arsa::CARSASpine *ARSACALLCONV arsa_AddSpine()
scenenode
Interface of a Render Target.
Definition: IRenderTarget.h:30
GLboolean enable
GLintptr offset
ARSA_API irr::io::IReadFile *ARSACALLCONV arsa_CreateAndOpenFile(const irr::io::path &filename)
ARSA_API irr::video::ITexture *ARSACALLCONV arsa_ExistTexture(const irr::io::path &filename)
ARSA_API irr::core::stringc ARSACALLCONV arsa_Base64Decode(const void *data, const size_t len)
ARSA_API bool ARSACALLCONV arsa_Zip(const void *unzip, irr::u32 size, irr::core::array< irr::u8 > &out_zip)
The Scene Manager manages scene nodes, mesh resources, cameras and all the other stuff.
ARSA_API irr::IRandomizer * g_rand
Self reallocating template array (like stl vector) with additional features.
Definition: irrArray.h:22
GLenum func
ARSA_API void ARSACALLCONV debug_printf(const char *str,...)
unstable function
ARSA_API int ARSACALLCONV arsa_fprintf(irr::io::IWriteFile *fp, const char *str,...)
ARSA_API irr::io::path ARSACALLCONV arsa_GetDir(const irr::io::path &filename)
ARSA_API void ARSACALLCONV arsa_SetFuncInit(arsaFunc *func)
#define ARSA_API
ARSA_API void ARSACALLCONV arsa_SetFuncUpdate(arsaFunc *func)
ARSA_API void ARSACALLCONV arsa_SetFuncHud(arsaFunc *func)
E_AD_INTERSTITIAL_FLAGS
Definition: arsa.h:555
GLdouble s
Definition: SDL_opengl.h:2063
ARSA_API bool ARSACALLCONV arsa_voiceStart(const irr::io::path &filename)
ARSA_API irr::core::array< irr::core::stringc > ARSACALLCONV arsa_TokenParams(const irr::core::stringc &param)
use ',' as token
ARSA_API irr::core::stringc ARSACALLCONV arsa_StringIntFloatToString(const irr::core::stringc &value)
2d vector template class with lots of operators and methods.
Definition: dimension2d.h:16
GLint GLint GLint GLint GLint x
Definition: SDL_opengl.h:1574
ARSA_API bool ARSACALLCONV arsa_RemoveFont(const irr::io::path &filename, irr::u32 size)
ARSA_API void ARSACALLCONV arsa_SetOutside(bool out)
ARSA_API void ARSACALLCONV arsa_DrawFontPsd(irr::arsa::CARSAPsd *psd, const irr::core::stringc &layer_name, irr::gui::IGUIFont *font, const irr::core::stringw &text, irr::u32 flags=irr::arsa::EDF_DEFAULT, const irr::video::SColor &color=irr::video::SColor(0xffffffff))
draw font use position from psd layer
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetRandomFilename()
return random number with filename as prefix, no extension: ARSA_452361258
ARSA_API irr::core::stringc ARSACALLCONV iap_GetPrice(const irr::core::stringc &item_name)
get price from store
ARSA_API void ARSACALLCONV ad_Free()
ARSA_API irr::arsa::CARSAPsd *ARSACALLCONV arsa_AddPsd()
ARSA_API void ARSACALLCONV arsa_SetPortraitLandscape(bool flip=true)
ARSA_API void ARSACALLCONV arsa_BeginMask(bool clear=true, bool clear_depth=true)
mask custom function
ARSA_API void ARSACALLCONV arsa_Notify(const char *str,...)
GLuint color
ARSA_API void ARSACALLCONV arsa_SkipWhite(irr::core::stringc &str, const irr::core::stringc &replace=irr::core::stringc(" \t\n\r\0"))
clear white space in string
Interface of a Video Driver dependent Texture.
Definition: ITexture.h:177
ARSA_API void ARSACALLCONV arsa_SetLandscape(bool flip=true)
ARSA_API CDXLottie * g_lottie
ARSA_API irr::io::IReadFile *ARSACALLCONV arsa_OpenFileFromServer(const irr::io::path &my_url, bool usemem=true, const irr::io::path &filename_ex=irr::io::path())
open file from server, must drop pointer
GLuint GLuint GLsizei GLenum type
Definition: SDL_opengl.h:1571
ARSA_API void ARSACALLCONV arsa_MaskShow(bool show)
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetGPS()
GLbitfield flags
ARSA_API irr::scene::ICameraSceneNode * g_camera
ARSA_API bool ARSACALLCONV arsa_ZipToFile(const void *unzip, irr::u32 size, const irr::io::path &filename)
ARSA_API void ARSACALLCONV adInt_Init(const char *unit_id)
ARSA_API bool ARSACALLCONV arsa_OpenNowLoading(const irr::io::path &psd_filename, bool psd_only=true)
void arsaFunc(void)
device
Definition: arsa.h:95
ARSA_API void ARSACALLCONV arsa_Poly2D(irr::core::position2di center, irr::f32 radius, bool fill, irr::video::SColor color, irr::s32 count, irr::video::ITexture *tex, irr::video::E_MATERIAL_TYPE shader, int start_percent, int end_percent)
ARSA_API irr::core::stringc ARSACALLCONV arsa_SkipWhiteHeadTail(const irr::core::stringc &str, const irr::core::stringc &replace=irr::core::stringc(" \t\n\r\0"))
clear white space on head and tail of string
ARSA_API bool ARSACALLCONV iap_Buy(const irr::core::stringc &item_name)
purchase successed is true or failed is false.
ARSA_API void ARSACALLCONV arsa_Begin()
begin rendering
ARSA_API void arsa_PlatformInit()
!!!local used only!!! automatic calling in arsa_Init()
ARSA_API void ARSACALLCONV arsa_ClearStuckTexture(irr::video::IVideoDriver *driver)
clear and clean stuck texture on irrlicht system :-(
ARSA_API void ARSACALLCONV arsa_ClearQueueDrawFont()
ARSA_API void ARSACALLCONV arsa_End()
end rendering
ARSA_API int ARSACALLCONV arsa_CountChar(const irr::core::stringc &s, char cc)
count char on string
ARSA_API bool ARSACALLCONV arsa_OpenXml(const irr::io::path &filename, arsa_xml_doc &out_doc)
ARSA_API bool ARSACALLCONV arsa_UnZipFromFile(const irr::io::path &filename, irr::core::array< irr::u8 > &out_unzip)
ARSA_API irr::f32 ARSACALLCONV arsa_GetZRot(const irr::core::vector3df &pos, const irr::core::vector3df &target)
ARSA_API irr::io::IWriteFile *ARSACALLCONV arsa_CreateAndWriteFile(const irr::io::path &filename, bool append=false)
ARSA_API irr::core::vector3df ARSACALLCONV arsa_Get3DFrom2D(irr::core::vector3df pos2D)
ARSA_API bool ARSACALLCONV arsa_SaveFileFromMemory(const irr::io::path &filename, const irr::core::stringc &in_buf, irr::u32 custom_size=0)
ARSA_API void ARSACALLCONV arsa_SetFuncLoading(arsaFuncLoading *func, void *userdata=0)
GLenum src
ARSA_API bool ARSACALLCONV arsa_DeleteFile(const irr::io::path &filename)
ARSA_API irr::u32 ARSACALLCONV arsa_ShaderConstSize(irr::video::IVideoDriver::E_SHADER_VAR_TYPE type)
return size of shader var
ARSA_API irr::io::IWriteFile *ARSACALLCONV arsa_CreateMemoryWriteFile(const irr::io::path &filename)
ARSA_API irr::core::stringc ARSACALLCONV arsa_GetPlatform()
Use this function to get the name of the platform.
ARSA_API bool ARSACALLCONV arsa_ResizeImg(const irr::io::path &filename, const irr::io::path &new_filename, const irr::core::dimension2du &new_size)
ARSA_API irr::ITimer * g_timer
#define ARSACALLCONV
GLuint shader
ARSA_API void ARSACALLCONV arsa_SetUserString(const irr::core::stringc &str)
set user string
ARSA_API void ARSACALLCONV arsa_SetAlwaysRun(bool enable)
ARSA_API irr::u32 ARSACALLCONV arsa_TokenString(const irr::core::stringc &str, irr::core::array< irr::core::stringc > &out_str, const irr::core::stringc &tok_chars=" |,", bool use_all_tok_chars=false)
default use '|' or ',' or ' ' to token string
ARSA_API void ARSACALLCONV arsa_MsgBox(char *str,...)
show message box
ARSA_API bool ARSACALLCONV arsa_IsDriveLetter(const irr::io::path &filename)
ARSA_API bool ARSACALLCONV arsa_IsWhiteSpace(const irr::c8 ch, const irr::core::stringc &replace=irr::core::stringc(" \t\n\r\0"))
is string have white space
ARSA_API void ARSACALLCONV arsa_GetVector3df(const irr::core::stringc &keys, irr::core::array< irr::core::vector3df > &out_vectors)