HDK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
command.C
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2025
3
* Side Effects Software Inc. All rights reserved.
4
*
5
* Redistribution and use of Houdini Development Kit samples in source and
6
* binary forms, with or without modification, are permitted provided that the
7
* following conditions are met:
8
* 1. Redistributions of source code must retain the above copyright notice,
9
* this list of conditions and the following disclaimer.
10
* 2. The name of Side Effects Software may not be used to endorse or
11
* promote products derived from this software without specific prior
12
* written permission.
13
*
14
* THIS SOFTWARE IS PROVIDED BY SIDE EFFECTS SOFTWARE `AS IS' AND ANY EXPRESS
15
* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
16
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
17
* NO EVENT SHALL SIDE EFFECTS SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT,
18
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
19
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
20
* OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
21
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
22
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
23
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24
*
25
*----------------------------------------------------------------------------
26
*/
27
28
#include <string.h>
29
#include <malloc.h>
30
#include <math.h>
31
#include <
UT/UT_DSOVersion.h
>
32
#include <
CMD/CMD_Args.h
>
33
#include <
CMD/CMD_Manager.h
>
34
35
// NOTE: Please consider extending HOM rather than hscript
36
37
static
void
38
cmd_args(
CMD_Args
&
args
)
39
{
40
// Command callback
41
int
i;
42
if
(args.
found
(
'e'
))
43
{
44
args.
err
() <<
"Found -e option with: "
<< args.
argp
(
'e'
) <<
"\n"
;
45
args.
showUsage
();
46
}
47
else
48
{
49
args.
out
() <<
"Arguments:\n"
;
50
for
(i = 1; i < args.
argc
(); i++)
51
args.
out
() << i <<
": "
<<
args
(i) <<
"\n"
;
52
}
53
}
54
55
void
56
CMDextendLibrary
(
CMD_Manager
*cman)
57
{
58
// Extend the hscript command language by adding a simple command which
59
// prints the arguments.
60
cman->
installCommand
(
"args"
,
"e:"
, cmd_args);
61
}
CMD_Args::err
std::ostream & err(int show_line_number=1)
CMD_Args.h
UT_Args::found
int found(int opt) const
Definition:
UT_Args.h:62
CMDextendLibrary
void CMDextendLibrary(CMD_Manager *cman)
Definition:
command.C:56
CMD_Args
Definition:
CMD_Args.h:26
CMD_Manager::installCommand
void installCommand(const char *name, const char *options, CMD_Callback cb, bool is_safe=true)
Install a command into the command list.
CMD_Args::out
std::ostream & out()
Definition:
CMD_Args.h:30
CMD_Manager
Definition:
CMD_Manager.h:63
UT_Args::argc
int argc() const
Definition:
UT_Args.h:49
CMD_Args::showUsage
void showUsage()
CMD_Manager.h
args
**If you just want to fire and args
Definition:
thread.h:609
UT_Args::argp
const char * argp(int opt, int which=0) const
Definition:
UT_Args.h:67
UT_DSOVersion.h
samples
expr
command.C
Generated on Tue Apr 1 2025 02:52:56 for HDK by
1.8.6