summaryrefslogtreecommitdiffstats
path: root/kxsldbg/kxsldbgpart/libxsldbg/xsldbgthread.h
blob: d83e71f33f009b94294564ae8423ed30041453e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90

/***************************************************************************
                          xsldbgthread.h  -  description
                             -------------------
    begin                : Thu Dec 20 2001
    copyright            : (C) 2001 by Keith Isdale
    email                : k_isdale@tpg.com.au
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef XSLDBGTHREAD_H
#define  XSLDBGTHREAD_H

#if defined WIN32
#include <libxsldbg/xsldbgwin32config.h>
#endif


#ifndef BUILD_DOCS
#include <libxml/xmlmemory.h>
#include <libxml/tree.h>

#include "xsldbgmsg.h"
#endif

#ifdef __cplusplus
extern "C" {
#endif


    int getAppReady(void);

    void setAppReady(int ready);

    int getInputStatus(void);

    void setInputStatus(XsldbgMessageEnum type);

    int getThreadStatus(void);

    void setThreadStatus(XsldbgMessageEnum type);

    void *xsldbgThreadMain(void *data);

    int xsldbgMain(int argc, char **argv);

     int xsldbgThreadInit(void);

     void xsldbgThreadFree(void);

    /* thread has died so cleanup after it */
     void xsldbgThreadCleanup(void);
     void xsldbgSetThreadCleanupFunc(void (*cleanupFunc)(void));

     const char *getFakeInput(void);

     int fakeInput(const char *text);

    /* Is input ready yet */
    int getInputReady(void);

    /* set/clear flag that indicates if input is ready */
    void setInputReady(int value);

    xmlChar *xslDbgShellReadline(xmlChar * prompt);



    /* This is implemented by xsldbg.c */

/**
 * xsldbgFree:
 *
 * Free memory used by xsldbg
 */
    void xsldbgFree(void);


#ifdef __cplusplus
}
#endif
#endif