public class WinPcap extends Pcap
Class peered with native pcap_t
structure providing WinPcap
specific extensions to libpcap library. To access WinPcap extensions, you
must use WinPcap class and its methods. WinPcap
class extends
Pcap class so you have all of the typeical Pcap
class
functionality. WinPcap provides many additional methods which are only
available on platforms what support WinPcap. First you must use static
WinPcap.isSupported()
method call which will return a boolean
that will indicate if WinPcap extensions are supported on this particular
platform. If you try and use any method in this class when WinPcap extensions
are not supported, another words WinPcap.isSupported()
returned
false, every method in this calls will throw unchecked
. Of
course,
PcapExtensionNotAvailableException
isSupported
call itself never throws an exception. So its safe
to use on any platform.
// Before using any WinPcap code if (WinPcap.isSupported() == false) { return; // Can't use WinPcap extensions }
WinPcap
the same way you would use Pcap
class. WinPcap
class provides many different static methods, and the same main three methods
that Pcap
does to open a capture session, plus one extra. They
are:
Pcap.findAllDevs
which
allows you to not only find network interfaces, but also PCAP files. This can
be done locally or remotely.
String source = "rpcap://"; List<PcapIf> alldevs = new ArrayList<PcapIf>(); int r = WinPcap.findAllDevsEx(source, auth, alldevs, errbuf); if (r != Pcap.OK) { fail(errbuf.toString()); return; } System.out.println("device list is " + alldevs);Now we have a list of PcapIf objects. You can use
PcapIf.getName()
which contains already properly formatted name
to be passed to WinPcap.open
call. WinPcap pcap = WinPcap.openLive(device, snaplen, flags, timeout, errbuf); // Do something pcap.close();This is identical to
Pcap.openLive
method with the exception
that WinPcap
object is returned. WinPcap extends Pcap. Here is
the same example this time using WinPcap's source string code and a
bogus device name (you will need to substitute your own actual device name):
String source = "rpcap://\\Device\\NPF_{BC81C4FC-242F-4F1C-9DAD-EA9523CC992D}"; int snaplen = 64 * 1024; int flags = Pcap.MODE_NON_PROMISCUOUS; int timeout = 1000; WinPcapRmtAuth auth = null; StringBuffer errbuf = new StringBuffer(); WinPcap pcap = WinPcap.open(source, snaplen, flags, timeout, auth, errbuf); if (pcap == null) { System.err.println(errbuf.toString()); return; } pcap.close(); }We use
open
method which takes a WinPcapRmtAuth
object. We could set username and password in it, but we chose the 'NULL'
authentication method. The remote server has to be configured with a '-n'
command line argument to access 'NULL' authentication.
Pcap
Pcap.Direction
| ���������� | �ֶκ�˵�� |
|---|---|
private static java.lang.ThreadLocal<java.lang.StringBuffer>
|
buf
Make sure that we are thread safe and don't clober each others
messages.
|
static int |
MODE_CAPT
default capture mode.
|
static int |
MODE_MONITOR
monitor mode.
|
static int |
MODE_STAT
statistical mode.
|
static int |
OPENFLAG_DATATX_UDP
Defines if the data transfer (in case of a remote capture) has to
be done
with UDP protocol and can only be used with
WinPcap.open .
|
static int |
OPENFLAG_MAX_RESPONSIVENESS
This flag configures the adapter for maximum responsiveness and
can only be
used with
WinPcap.open .
|
static int |
OPENFLAG_NOCAPTURE_LOCAL
Defines if the local adapter will capture its own generated
traffic and can
only be used with
WinPcap.open .
|
static int |
OPENFLAG_NOCAPTURE_RPCAP
Defines if the remote probe will capture its own generated
traffic and can
only be used with
WinPcap.open .
|
static int |
SRC_FILE
Used to create a source string using method
createSrcStr , which will be used to open a local capture file.
|
static int |
SRC_IFLOCAL
Used to create a source string using method
createSrcStr , which will be used to open a local network
interface.
|
static int |
SRC_IFREMOTE
Used to create a source string using method
createSrcStr ,which will be used to open a remote connection
(could be file, or network interface on remote system).
|
static int |
TRANSMIT_SYNCH_ASAP
Flag used with
sendQueueTransmit(WinPcapSendQueue,
int) , to tell
kernel to send packets as fast as possible, without synchronizing with
packet timestamps found in headers.
|
static int |
TRANSMIT_SYNCH_USE_TIMESTAMP
Flag used with
sendQueueTransmit(WinPcapSendQueue,
int) , to tell
kernel to send packets at the rate that is determined by the timestamp with
in the sendqueue.
|
DEFAULT_JPACKET_BUFFER_SIZE,
DEFAULT_PROMISC, DEFAULT_SNAPLEN,
DEFAULT_TIMEOUT, DISPATCH_BUFFER_FULL,
ERROR, ERROR_ACTIVATED,
ERROR_BREAK, ERROR_IFACE_NOT_UP,
ERROR_NO_SUCH_DEVICE,
ERROR_NOT_ACTIVATED,
ERROR_NOT_RFMON, ERROR_PERM_DENIED,
ERROR_RFMON_NOTSUP,
IN, INOUT, JNETPCAP_LIBRARY_NAME,
LIBRARY, LOOP_INFINATE, LOOP_INFINITE, LOOP_INTERRUPTED,
MODE_BLOCKING, MODE_NON_BLOCKING,
MODE_NON_PROMISCUOUS,
MODE_PROMISCUOUS, NEXT_EX_EOF, NEXT_EX_NOT_OK, NEXT_EX_OK, NEXT_EX_TIMEDOUT,
NOT_OK, OK, OUT, PCAP_LIBRARY, PCAP100_LOAD_STATUS,
PCAP100_WRAPPER, WARNING, WARNING_PROMISC_NOT_SUP,
WINPCAP_LIBRARY
| ���� | ��������˵�� |
|---|---|
private |
WinPcap()
WinPcap objects make no sense unless they have been allocated
from JNI
space and the physical address field has been set in super.physical.
|
| ���������� | ������˵�� |
|---|---|
private static java.lang.String |
asString(byte[] bs)
As string.
|
static int |
createSrcStr(java.lang.Appendable source,
int type,
java.lang.String host,
java.lang.String port,
java.lang.String name,
java.lang.Appendable errbuf)
Accept a set of strings (host name, port, ...), and it returns
the complete
source string according to the new format (e.g.
|
static int |
createSrcStr(java.lang.StringBuffer source,
int type,
java.lang.String host,
java.lang.String port,
java.lang.String name,
java.lang.StringBuffer errbuf)
Accept a set of strings (host name, port, ...), and it returns
the complete
source string according to the new format (e.g.
|
static int |
createSrcStr(java.lang.StringBuilder source,
int type,
java.lang.String host,
java.lang.String port,
java.lang.String name,
java.lang.StringBuilder errbuf)
Accept a set of strings (host name, port, ...), and it returns
the complete
source string according to the new format (e.g.
|
static int |
findAllDevsEx(java.lang.String source,
WinPcapRmtAuth auth,
java.util.List<PcapIf> alldevs,
java.lang.Appendable errbuf)
Create a list of network devices that can be opened with
pcap_open().
|
static int |
findAllDevsEx(java.lang.String source,
WinPcapRmtAuth auth,
java.util.List<PcapIf> alldevs,
java.lang.StringBuffer errbuf)
Create a list of network devices that can be opened with
pcap_open().
|
static int |
findAllDevsEx(java.lang.String source,
WinPcapRmtAuth auth,
java.util.List<PcapIf> alldevs,
java.lang.StringBuilder errbuf)
Create a list of network devices that can be opened with
pcap_open().
|
private static java.lang.StringBuffer |
getBuf()
Returns a common shared StringBuffer buffer
|
private static void |
initIDs()
Initialize JNI method, field and class IDs.
|
static boolean |
isSupported()
Checks if WinPcap extensions are available on this
platform.
|
int |
liveDump(java.lang.String fname,
int maxsize,
int maxpackets)
dumps the network traffic from an interface to a file.
|
int |
liveDumpEnded(int sync)
Return the status of the kernel dump process, i.e. tells if one
of the
limits defined with pcap_live_dump() has been reached.
|
static int |
offlineFilter(PcapBpfProgram program,
int caplen,
int len,
java.nio.ByteBuffer buf)
Returns if a given filter applies to an offline packet.
|
static int |
offlineFilter(PcapBpfProgram program,
PcapHeader header,
java.nio.ByteBuffer buffer)
Returns if a given filter applies to an offline packet.
|
static int |
offlineFilter(PcapBpfProgram program,
PcapHeader header,
JBuffer buffer)
Returns if a given filter applies to an offline packet.
|
static int |
offlineFilter(PcapBpfProgram program,
PcapPktHdr header,
java.nio.ByteBuffer buf)
�ѹ�ʱ��
|
static WinPcap
|
open(java.lang.String source,
int snaplen,
int flags,
int timeout,
WinPcapRmtAuth auth,
java.lang.Appendable errbuf)
Open a generic source in order to capture/send (WinPcap only)
traffic.
|
static WinPcap
|
open(java.lang.String source,
int snaplen,
int flags,
int timeout,
WinPcapRmtAuth auth,
java.lang.StringBuffer errbuf)
Open a generic source in order to capture/send (WinPcap only)
traffic.
|
static WinPcap
|
open(java.lang.String source,
int snaplen,
int flags,
int timeout,
WinPcapRmtAuth auth,
java.lang.StringBuilder errbuf)
Open a generic source in order to capture/send (WinPcap only)
traffic.
|
static WinPcap
|
openDead(int linktype,
int snaplen)
Create a pcap_t structure without starting a capture.
pcap_open_dead() is
used for creating a pcap_t structure to use when calling the other
functions in libpcap.
|
static WinPcap
|
openLive(java.lang.String device,
int snaplen,
int promisc,
int timeout,
java.lang.Appendable errbuf)
This method, overrides the generic libpcap based
openLive
method, and allocates a peer pcap object that allows WinPcap extensions.
|
static WinPcap
|
openLive(java.lang.String device,
int snaplen,
int promisc,
int timeout,
java.lang.StringBuffer errbuf)
This method, overrides the generic libpcap based
openLive
method, and allocates a peer pcap object that allows WinPcap extensions.
|
static WinPcap
|
openLive(java.lang.String device,
int snaplen,
int promisc,
int timeout,
java.lang.StringBuilder errbuf)
This method, overrides the generic libpcap based
openLive
method, and allocates a peer pcap object that allows WinPcap extensions.
|
static WinPcap
|
openOffline(java.lang.String fname,
java.lang.Appendable errbuf)
Open a savefile in the tcpdump/libpcap format to read packets.
|
static WinPcap
|
openOffline(java.lang.String fname,
java.lang.StringBuffer errbuf)
Open a savefile in the tcpdump/libpcap format to read packets.
|
static WinPcap
|
openOffline(java.lang.String fname,
java.lang.StringBuilder errbuf)
Open a savefile in the tcpdump/libpcap format to read packets.
|
static WinPcapSendQueue |
sendQueueAlloc(int size)
Allocate a send queue.
|
static void |
sendQueueDestroy(WinPcapSendQueue queue)
Destroy a send queue.
|
int |
sendQueueTransmit(WinPcapSendQueue queue,
int synch)
Send a queue of raw packets to the network.
|
int |
setBuff(int dim)
Set the size of the kernel buffer associated with an adapter.
|
int |
setMinToCopy(int size)
Set the minumum amount of data received by the kernel in a single
call.
|
int |
setMode(int mode)
Set the working mode of the interface p to mode.
|
WinPcapSamp
|
setSampling()
Define a sampling method for packet capture.
|
WinPcapStat
|
statsEx()
This method extends the
Pcap.stats method and allows
more
statistics to be returned.
|
private static void |
toAppendable(java.lang.StringBuffer buf,
java.lang.Appendable appendable)
Copies the contents of the source buf to appendable.
|
private static void |
toStringBuilder(java.lang.StringBuffer buf,
java.lang.StringBuilder builder)
Copies the contents of the source buf to builder.
|
activate, breakloop, canSetRfmon, checkIsActive, close, compile,
compile,
compileNoPcap,
create,
datalink, datalinkNameToVal,
datalinkValToDescription,
datalinkValToName,
dispatch,
dispatch,
dispatch,
dispatch,
dispatch,
dispatch,
dispatch,
dispatch,
dispatch,
dispatch,
dumpOpen,
finalize, findAllDevs,
freeAllDevs,
freeAllDevs,
freecode,
getErr, getNonBlock,
getPcap080LoadError,
inject, inject, inject,
inject,
isCreateSupported,
isInjectSupported,
isLoaded,
isPcap080Loaded, isPcap100Loaded,
isSendPacketSupported,
isSwapped, libVersion, lookupDev,
lookupNet,
lookupNet,
loop,
loop,
loop,
loop,
loop,
loop,
loop,
loop,
loop,
loop,
majorVersion, minorVersion, next,
next, nextEx,
nextEx,
nextEx,
sendPacket, sendPacket,
sendPacket,
sendPacket,
setBufferSize, setDatalink, setDirection,
setDirection,
setFilter,
setNonBlock,
setPromisc, setRfmon, setSnaplen, setTimeout, snapshot, stats,
toString
private static final java.lang.ThreadLocal<java.lang.StringBuffer> buf
public static final int MODE_CAPT
public static final int MODE_MONITOR
public static final int MODE_STAT
public static final int OPENFLAG_DATATX_UDP
WinPcap.open
. If
it is '1' if you want a UDP data connection, '0' if you want a TCP data
connection; control connection is always TCP-based. A UDP connection is
much lighter, but it does not guarantee that all the captured packets
arrive to the client workstation. Moreover, it could be harmful in case of
network congestion. This flag is meaningless if the source is not a remote
interface. In that case, it is simply ignored.
public static final int OPENFLAG_MAX_RESPONSIVENESS
WinPcap.open
. In presence of a large value for
nbytes, WinPcap waits for the arrival of several packets before copying the
data to the user. This guarantees a low number of system calls, i.e. lower
processor usage, i.e. better performance, which is good for applications
like sniffers. If the user sets the PCAP_OPENFLAG_MAX_RESPONSIVENESS flag,
the capture driver will copy the packets as soon as the application is
ready to receive them. This is suggested for real time applications (like,
for example, a bridge) that need the best responsiveness.
public static final int OPENFLAG_NOCAPTURE_LOCAL
WinPcap.open
. This flag tells the underlying
capture driver to drop the packets that were sent by itself. This is
usefult when building applications like bridges, that should ignore the
traffic they just sent.
public static final int OPENFLAG_NOCAPTURE_RPCAP
WinPcap.open
. In case the remote probe uses
the same interface to capture traffic and to send data back to the caller,
the captured traffic includes the RPCAP traffic as well. If this flag is
turned on, the RPCAP traffic is excluded from the capture, so that the
trace returned back to the collector is does not include this traffic.
public static final int SRC_FILE
createSrcStr
, which will be used to open a local capture file.
Used with createSrcStr
for its type field. Used with
createSrcStr
for its type field.
public static final int SRC_IFLOCAL
createSrcStr
, which will be used to open a local network
interface. Used with createSrcStr
for its type field.
public static final int SRC_IFREMOTE
createSrcStr
,which will be used to open a remote connection
(could be file, or network interface on remote system). Used with
createSrcStr
for its type field.
public static final int TRANSMIT_SYNCH_ASAP
sendQueueTransmit(WinPcapSendQueue,
int)
, to tell
kernel to send packets as fast as possible, without synchronizing with
packet timestamps found in headers.
public static final int TRANSMIT_SYNCH_USE_TIMESTAMP
sendQueueTransmit(WinPcapSendQueue,
int)
, to tell
kernel to send packets at the rate that is determined by the timestamp with
in the sendqueue. The transmittion is synchronized with timestamps.
private WinPcap()
private static java.lang.String asString(byte[] bs)
bs
- the bspublic static int createSrcStr(java.lang.Appendable source, int type, java.lang.String host, java.lang.String port, java.lang.String name, java.lang.Appendable errbuf) throws java.io.IOException
source
- will contain the complete source string wen the function
returns
type
- its value tells the type of the source we want to created
host
- an user-allocated buffer that keeps the host (e.g.
"foo.bar.com")
we want to connect to. It can be NULL in case we want to open an
interface on a local host
port
- an user-allocated buffer that keeps the network port (e.g.
"2002")
we want to use for the RPCAP protocol. It can be NULL in case we
want to open an interface on a local host.
name
- an user-allocated buffer that keeps the interface name we
want to
use (e.g. "eth0"). It can be NULL in case the return string (i.e.
'source') has to be used with the pcap_findalldevs_ex(), which
does not require the interface name.
errbuf
- buffer that will contain the error message (in case there
is one).
java.io.IOException
- Signals that an I/O exception has occurred.
public static int createSrcStr(java.lang.StringBuffer source, int type, java.lang.String host, java.lang.String port, java.lang.String name, java.lang.StringBuffer errbuf)
source
- will contain the complete source string wen the function
returns
type
- its value tells the type of the source we want to created
host
- an user-allocated buffer that keeps the host (e.g.
"foo.bar.com")
we want to connect to. It can be NULL in case we want to open an
interface on a local host
port
- an user-allocated buffer that keeps the network port (e.g.
"2002")
we want to use for the RPCAP protocol. It can be NULL in case we
want to open an interface on a local host.
name
- an user-allocated buffer that keeps the interface name we
want to
use (e.g. "eth0"). It can be NULL in case the return string (i.e.
'source') has to be used with the pcap_findalldevs_ex(), which
does not require the interface name.
errbuf
- buffer that will contain the error message (in case there
is one).
public static int createSrcStr(java.lang.StringBuilder source, int type, java.lang.String host, java.lang.String port, java.lang.String name, java.lang.StringBuilder errbuf)
source
- will contain the complete source string wen the function
returns
type
- its value tells the type of the source we want to created
host
- an user-allocated buffer that keeps the host (e.g.
"foo.bar.com")
we want to connect to. It can be NULL in case we want to open an
interface on a local host
port
- an user-allocated buffer that keeps the network port (e.g.
"2002")
we want to use for the RPCAP protocol. It can be NULL in case we
want to open an interface on a local host.
name
- an user-allocated buffer that keeps the interface name we
want to
use (e.g. "eth0"). It can be NULL in case the return string (i.e.
'source') has to be used with the pcap_findalldevs_ex(), which
does not require the interface name.
errbuf
- buffer that will contain the error message (in case there
is one).
public static int findAllDevsEx(java.lang.String source, WinPcapRmtAuth auth, java.util.List<PcapIf> alldevs, java.lang.Appendable errbuf) throws java.io.IOException
This function is a superset of the old 'pcap_findalldevs()', which is obsolete, and which allows listing only the devices present on the local machine. Vice versa, pcap_findalldevs_ex() allows listing the devices present on a remote machine as well. Additionally, it can list all the pcap files available into a given folder. Moreover, pcap_findalldevs_ex() is platform independent, since it relies on the standard pcap_findalldevs() to get addresses on the local machine.
In case the function has to list the interfaces on a remote machine, it opens a new control connection toward that machine, it retrieves the interfaces, and it drops the connection. However, if this function detects that the remote machine is in 'active' mode, the connection is not dropped and the existing socket is used.
The 'source' is a parameter that tells the function where the lookup has to be done and it uses the same syntax of the pcap_open().
Differently from the pcap_findalldevs(), the interface names (pointed by the alldevs->name and the other ones in the linked list) are already ready to be used in the pcap_open() call. Vice versa, the output that comes from pcap_findalldevs() must be formatted with the new pcap_createsrcstr() before passing the source identifier to the pcap_open().
The error message is returned in the 'errbuf' variable. An error could be due to several reasons:
Warning:
There may be network devices that cannot be opened with pcap_open() by the
process calling pcap_findalldevs(), because, for example, that process
might not have sufficient privileges to open them for capturing; if so,
those devices will not appear on the list. The interface list must be
deallocated manually by using the pcap_freealldevs().
source
- a char* buffer that keeps the 'source localtion',
according to the
new WinPcap syntax. This source will be examined looking for
adapters (local or remote) (e.g. source can be 'rpcap://' for
local adapters or 'rpcap://host:port' for adapters on a remote
host) or pcap files (e.g. source can be 'file://c:/myfolder/').
The strings that must be prepended to the 'source' in order to
define if we want local/remote adapters or files is defined in the
new Source Specification Syntax
auth
- a pointer to a pcap_rmtauth structure. This pointer keeps
the
information required to authenticate the RPCAP connection to the
remote host. This parameter is not meaningful in case of a query
to the local host: in that case it can be NULL.
alldevs
- a list of all the network interfaceserrbuf
- error message (in case there is one)java.io.IOException
- Signals that an I/O exception has occurred.
public static int findAllDevsEx(java.lang.String source, WinPcapRmtAuth auth, java.util.List<PcapIf> alldevs, java.lang.StringBuffer errbuf)
This function is a superset of the old 'pcap_findalldevs()', which is obsolete, and which allows listing only the devices present on the local machine. Vice versa, pcap_findalldevs_ex() allows listing the devices present on a remote machine as well. Additionally, it can list all the pcap files available into a given folder. Moreover, pcap_findalldevs_ex() is platform independent, since it relies on the standard pcap_findalldevs() to get addresses on the local machine.
In case the function has to list the interfaces on a remote machine, it opens a new control connection toward that machine, it retrieves the interfaces, and it drops the connection. However, if this function detects that the remote machine is in 'active' mode, the connection is not dropped and the existing socket is used.
The 'source' is a parameter that tells the function where the lookup has to be done and it uses the same syntax of the pcap_open().
Differently from the pcap_findalldevs(), the interface names (pointed by the alldevs->name and the other ones in the linked list) are already ready to be used in the pcap_open() call. Vice versa, the output that comes from pcap_findalldevs() must be formatted with the new pcap_createsrcstr() before passing the source identifier to the pcap_open().
The error message is returned in the 'errbuf' variable. An error could be due to several reasons:
Warning:
There may be network devices that cannot be opened with pcap_open() by the
process calling pcap_findalldevs(), because, for example, that process
might not have sufficient privileges to open them for capturing; if so,
those devices will not appear on the list. The interface list must be
deallocated manually by using the pcap_freealldevs().
source
- a char* buffer that keeps the 'source localtion',
according to the
new WinPcap syntax. This source will be examined looking for
adapters (local or remote) (e.g. source can be 'rpcap://' for
local adapters or 'rpcap://host:port' for adapters on a remote
host) or pcap files (e.g. source can be 'file://c:/myfolder/').
The strings that must be prepended to the 'source' in order to
define if we want local/remote adapters or files is defined in the
new Source Specification Syntax
auth
- a pointer to a pcap_rmtauth structure. This pointer keeps
the
information required to authenticate the RPCAP connection to the
remote host. This parameter is not meaningful in case of a query
to the local host: in that case it can be NULL.
alldevs
- a list of all the network interfaceserrbuf
- error message (in case there is one)public static int findAllDevsEx(java.lang.String source, WinPcapRmtAuth auth, java.util.List<PcapIf> alldevs, java.lang.StringBuilder errbuf)
This function is a superset of the old 'pcap_findalldevs()', which is obsolete, and which allows listing only the devices present on the local machine. Vice versa, pcap_findalldevs_ex() allows listing the devices present on a remote machine as well. Additionally, it can list all the pcap files available into a given folder. Moreover, pcap_findalldevs_ex() is platform independent, since it relies on the standard pcap_findalldevs() to get addresses on the local machine.
In case the function has to list the interfaces on a remote machine, it opens a new control connection toward that machine, it retrieves the interfaces, and it drops the connection. However, if this function detects that the remote machine is in 'active' mode, the connection is not dropped and the existing socket is used.
The 'source' is a parameter that tells the function where the lookup has to be done and it uses the same syntax of the pcap_open().
Differently from the pcap_findalldevs(), the interface names (pointed by the alldevs->name and the other ones in the linked list) are already ready to be used in the pcap_open() call. Vice versa, the output that comes from pcap_findalldevs() must be formatted with the new pcap_createsrcstr() before passing the source identifier to the pcap_open().
The error message is returned in the 'errbuf' variable. An error could be due to several reasons:
Warning:
There may be network devices that cannot be opened with pcap_open() by the
process calling pcap_findalldevs(), because, for example, that process
might not have sufficient privileges to open them for capturing; if so,
those devices will not appear on the list. The interface list must be
deallocated manually by using the pcap_freealldevs().
source
- a char* buffer that keeps the 'source localtion',
according to the
new WinPcap syntax. This source will be examined looking for
adapters (local or remote) (e.g. source can be 'rpcap://' for
local adapters or 'rpcap://host:port' for adapters on a remote
host) or pcap files (e.g. source can be 'file://c:/myfolder/').
The strings that must be prepended to the 'source' in order to
define if we want local/remote adapters or files is defined in the
new Source Specification Syntax
auth
- a pointer to a pcap_rmtauth structure. This pointer keeps
the
information required to authenticate the RPCAP connection to the
remote host. This parameter is not meaningful in case of a query
to the local host: in that case it can be NULL.
alldevs
- a list of all the network interfaceserrbuf
- error message (in case there is one)private static java.lang.StringBuffer getBuf()
private static void initIDs()
public static boolean isSupported()
true
means WinPcap extensions are available and
loaded, otherwise false
public static int offlineFilter(PcapBpfProgram program, int caplen, int len, java.nio.ByteBuffer buf)
program
- bpf filtercaplen
- length of the captured packetlen
- length of the packet on the wirebuf
- buffer containing packet datapublic static int offlineFilter(PcapBpfProgram program, PcapHeader header, java.nio.ByteBuffer buffer)
program
- bpf filterheader
- packets headerbuffer
- buffer containing packet datapublic static int offlineFilter(PcapBpfProgram program, PcapHeader header, JBuffer buffer)
program
- bpf filterheader
- packets headerbuffer
- buffer containing packet data@Deprecated public static int offlineFilter(PcapBpfProgram program, PcapPktHdr header, java.nio.ByteBuffer buf)
offlineFilter(PcapBpfProgram, PcapHeader, JBuffer)
program
- bpf filterheader
- packets headerbuf
- buffer containing packet dataofflineFilter(PcapBpfProgram,
PcapHeader, ByteBuffer)
,
offlineFilter(PcapBpfProgram,
PcapHeader, JBuffer)
public static WinPcap open(java.lang.String source, int snaplen, int flags, int timeout, WinPcapRmtAuth auth, java.lang.Appendable errbuf) throws java.io.IOException
open
replaces all the openXxx()
methods with a
single call. This method hides the differences between the different
openXxx()
methods so that the programmer does not have to
manage different opening function. In this way, the 'true' open method is
decided according to the source type, which is included into the source
string (in the form of source prefix). This function can rely on the
createSrcStr
to create the string that keeps the capture
device according to the new syntax, and the parseSrcStr
for
the other way round.
Warning: The source cannot be larger than PCAP_BUF_SIZE. The following formats are not allowed as 'source' strings:
source
- The source name has to include the format prefix according
to the
new Source Specification Syntax and it cannot be NULL. snaplen
- length of the packet that has to be retained. For each
packet
received by the filter, only the first 'snaplen' bytes are stored
in the buffer and passed to the user application. For instance,
snaplen equal to 100 means that only the first 100 bytes of each
packet are stored.
flags
- keeps several flags that can be needed for capturing packet
timeout
- read timeout in milliseconds. The read timeout is used to
arrange
that the read not necessarily return immediately when a packet is
seen, but that it waits for some amount of time to allow more
packets to arrive and to read multiple packets from the OS kernel
in one operation. Not all platforms support a read timeout; on
platforms that don't, the read timeout is ignored.
auth
- a pointer to a 'struct pcap_rmtauth' that keeps the
information
required to authenticate the user on a remote machine. In case
this is not a remote capture, this pointer can be set to NULL.
errbuf
- a pointer to a user-allocated buffer which will contain
the error
in case this function fails. The pcap_open() and findalldevs() are
the only two functions which have this parameter, since they do
not have (yet) a pointer to a pcap_t structure, which reserves
space for the error string. Since these functions do not have
(yet) a pcap_t pointer (the pcap_t pointer is NULL in case of
errors), they need an explicit 'errbuf' variable. 'errbuf' may
also be set to warning text when pcap_open_live() succeds; to
detect this case the caller should store a zero-length string in
'errbuf' before calling pcap_open_live() and display the warning
to the user if 'errbuf' is no longer a zero-length string.
java.io.IOException
- Signals that an I/O exception has occurred.
public static WinPcap open(java.lang.String source, int snaplen, int flags, int timeout, WinPcapRmtAuth auth, java.lang.StringBuffer errbuf)
open
replaces all the openXxx()
methods with a
single call. This method hides the differences between the different
openXxx()
methods so that the programmer does not have to
manage different opening function. In this way, the 'true' open method is
decided according to the source type, which is included into the source
string (in the form of source prefix). This function can rely on the
createSrcStr
to create the string that keeps the capture
device according to the new syntax, and the parseSrcStr
for
the other way round.
Warning: The source cannot be larger than PCAP_BUF_SIZE. The following formats are not allowed as 'source' strings:
source
- The source name has to include the format prefix according
to the
new Source Specification Syntax and it cannot be NULL. snaplen
- length of the packet that has to be retained. For each
packet
received by the filter, only the first 'snaplen' bytes are stored
in the buffer and passed to the user application. For instance,
snaplen equal to 100 means that only the first 100 bytes of each
packet are stored.
flags
- keeps several flags that can be needed for capturing packet
timeout
- read timeout in milliseconds. The read timeout is used to
arrange
that the read not necessarily return immediately when a packet is
seen, but that it waits for some amount of time to allow more
packets to arrive and to read multiple packets from the OS kernel
in one operation. Not all platforms support a read timeout; on
platforms that don't, the read timeout is ignored.
auth
- a pointer to a 'struct pcap_rmtauth' that keeps the
information
required to authenticate the user on a remote machine. In case
this is not a remote capture, this pointer can be set to NULL.
errbuf
- a pointer to a user-allocated buffer which will contain
the error
in case this function fails. The pcap_open() and findalldevs() are
the only two functions which have this parameter, since they do
not have (yet) a pointer to a pcap_t structure, which reserves
space for the error string. Since these functions do not have
(yet) a pcap_t pointer (the pcap_t pointer is NULL in case of
errors), they need an explicit 'errbuf' variable. 'errbuf' may
also be set to warning text when pcap_open_live() succeds; to
detect this case the caller should store a zero-length string in
'errbuf' before calling pcap_open_live() and display the warning
to the user if 'errbuf' is no longer a zero-length string.
public static WinPcap open(java.lang.String source, int snaplen, int flags, int timeout, WinPcapRmtAuth auth, java.lang.StringBuilder errbuf)
open
replaces all the openXxx()
methods with a
single call. This method hides the differences between the different
openXxx()
methods so that the programmer does not have to
manage different opening function. In this way, the 'true' open method is
decided according to the source type, which is included into the source
string (in the form of source prefix). This function can rely on the
createSrcStr
to create the string that keeps the capture
device according to the new syntax, and the parseSrcStr
for
the other way round.
Warning: The source cannot be larger than PCAP_BUF_SIZE. The following formats are not allowed as 'source' strings:
source
- The source name has to include the format prefix according
to the
new Source Specification Syntax and it cannot be NULL. snaplen
- length of the packet that has to be retained. For each
packet
received by the filter, only the first 'snaplen' bytes are stored
in the buffer and passed to the user application. For instance,
snaplen equal to 100 means that only the first 100 bytes of each
packet are stored.
flags
- keeps several flags that can be needed for capturing packet
timeout
- read timeout in milliseconds. The read timeout is used to
arrange
that the read not necessarily return immediately when a packet is
seen, but that it waits for some amount of time to allow more
packets to arrive and to read multiple packets from the OS kernel
in one operation. Not all platforms support a read timeout; on
platforms that don't, the read timeout is ignored.
auth
- a pointer to a 'struct pcap_rmtauth' that keeps the
information
required to authenticate the user on a remote machine. In case
this is not a remote capture, this pointer can be set to NULL.
errbuf
- a pointer to a user-allocated buffer which will contain
the error
in case this function fails. The pcap_open() and findalldevs() are
the only two functions which have this parameter, since they do
not have (yet) a pointer to a pcap_t structure, which reserves
space for the error string. Since these functions do not have
(yet) a pcap_t pointer (the pcap_t pointer is NULL in case of
errors), they need an explicit 'errbuf' variable. 'errbuf' may
also be set to warning text when pcap_open_live() succeds; to
detect this case the caller should store a zero-length string in
'errbuf' before calling pcap_open_live() and display the warning
to the user if 'errbuf' is no longer a zero-length string.
public static WinPcap openDead(int linktype, int snaplen)
linktype
- pcap DLT link type integer valuesnaplen
- filters generated using the pcap structure will truncate
captured
packets to this length
Pcap.openDead(int,
int)
public static WinPcap openLive(java.lang.String device, int snaplen, int promisc, int timeout, java.lang.Appendable errbuf) throws java.io.IOException
This method, overrides the generic libpcap based openLive
method, and allocates a peer pcap object that allows WinPcap extensions.
Open a live capture associated with the specified network interface device. pcap_open_live() is used to obtain a packet capture descriptor to look at packets on the network. device is a string that specifies the network device to open; on Linux systems with 2.2 or later kernels, a device argument of "any" or NULL can be used to capture packets from all interfaces. snaplen specifies the maximum number of bytes to capture. If this value is less than the size of a packet that is captured, only the first snaplen bytes of that packet will be captured and provided as packet data. A value of 65535 should be sufficient, on most if not all networks, to capture all the data available from the packet. promisc specifies if the interface is to be put into promiscuous mode. (Note that even if this parameter is false, the interface could well be in promiscuous mode for some other reason.)
For now, this doesn't work on the "any" device; if an argument of "any" or NULL is supplied, the promisc flag is ignored. to_ms specifies the read timeout in milliseconds. The read timeout is used to arrange that the read not necessarily return immediately when a packet is seen, but that it wait for some amount of time to allow more packets to arrive and to read multiple packets from the OS kernel in one operation. Not all platforms support a read timeout; on platforms that don't, the read timeout is ignored. A zero value for to_ms, on platforms that support a read timeout, will cause a read to wait forever to allow enough packets to arrive, with no timeout. errbuf is used to return error or warning text. It will be set to error text when pcap_open_live() fails and returns NULL. errbuf may also be set to warning text when pcap_open_live() succeds; to detect this case the caller should store a zero-length string in errbuf before calling pcap_open_live() and display the warning to the user if errbuf is no longer a zero-length string.
Special note about snaplen
argument. The behaviour of
this argument may be suprizing to some. The argument
is only
applied when there is a filter set using setFilter
method
after the openLive
call. Otherwise snaplen, even non zero is
ignored. This is the behavior of all BSD systems utilizing BPF and WinPcap.
This may change in the future, but that is the current behavior. (For more
detailed explanation and discussion please see jNetPcap website and its
FAQs.)
device
- buffer containing a C, '\0' terminated string with the the
name of
the device
snaplen
- amount of data to capture per packet; (see special note
in doc
comments about when this argument is ignored even when non-zero)
promisc
- 1 means open in promiscious mode, a 0 means
non-propmiscous
timeout
- timeout in mserrbuf
- a buffer that will contain any error messages if the call
to open
failed
pcap_t
C structure as
returned by native libpcap call to open
java.io.IOException
- Signals that an I/O exception has occurred.
Pcap.openLive(String,
int, int, int, StringBuilder)
public static WinPcap openLive(java.lang.String device, int snaplen, int promisc, int timeout, java.lang.StringBuffer errbuf)
This method, overrides the generic libpcap based openLive
method, and allocates a peer pcap object that allows WinPcap extensions.
Open a live capture associated with the specified network interface device. pcap_open_live() is used to obtain a packet capture descriptor to look at packets on the network. device is a string that specifies the network device to open; on Linux systems with 2.2 or later kernels, a device argument of "any" or NULL can be used to capture packets from all interfaces. snaplen specifies the maximum number of bytes to capture. If this value is less than the size of a packet that is captured, only the first snaplen bytes of that packet will be captured and provided as packet data. A value of 65535 should be sufficient, on most if not all networks, to capture all the data available from the packet. promisc specifies if the interface is to be put into promiscuous mode. (Note that even if this parameter is false, the interface could well be in promiscuous mode for some other reason.)
For now, this doesn't work on the "any" device; if an argument of "any" or NULL is supplied, the promisc flag is ignored. to_ms specifies the read timeout in milliseconds. The read timeout is used to arrange that the read not necessarily return immediately when a packet is seen, but that it wait for some amount of time to allow more packets to arrive and to read multiple packets from the OS kernel in one operation. Not all platforms support a read timeout; on platforms that don't, the read timeout is ignored. A zero value for to_ms, on platforms that support a read timeout, will cause a read to wait forever to allow enough packets to arrive, with no timeout. errbuf is used to return error or warning text. It will be set to error text when pcap_open_live() fails and returns NULL. errbuf may also be set to warning text when pcap_open_live() succeds; to detect this case the caller should store a zero-length string in errbuf before calling pcap_open_live() and display the warning to the user if errbuf is no longer a zero-length string.
Special note about snaplen
argument. The behaviour of
this argument may be suprizing to some. The argument
is only
applied when there is a filter set using setFilter
method
after the openLive
call. Otherwise snaplen, even non zero is
ignored. This is the behavior of all BSD systems utilizing BPF and WinPcap.
This may change in the future, but that is the current behavior. (For more
detailed explanation and discussion please see jNetPcap website and its
FAQs.)
device
- buffer containing a C, '\0' terminated string with the the
name of
the device
snaplen
- amount of data to capture per packet; (see special note
in doc
comments about when this argument is ignored even when non-zero)
promisc
- 1 means open in promiscious mode, a 0 means
non-propmiscous
timeout
- timeout in mserrbuf
- a buffer that will contain any error messages if the call
to open
failed
pcap_t
C structure as
returned by native libpcap call to open
Pcap.openLive(String,
int, int, int, StringBuilder)
public static WinPcap openLive(java.lang.String device, int snaplen, int promisc, int timeout, java.lang.StringBuilder errbuf)
This method, overrides the generic libpcap based openLive
method, and allocates a peer pcap object that allows WinPcap extensions.
Open a live capture associated with the specified network interface device. pcap_open_live() is used to obtain a packet capture descriptor to look at packets on the network. device is a string that specifies the network device to open; on Linux systems with 2.2 or later kernels, a device argument of "any" or NULL can be used to capture packets from all interfaces. snaplen specifies the maximum number of bytes to capture. If this value is less than the size of a packet that is captured, only the first snaplen bytes of that packet will be captured and provided as packet data. A value of 65535 should be sufficient, on most if not all networks, to capture all the data available from the packet. promisc specifies if the interface is to be put into promiscuous mode. (Note that even if this parameter is false, the interface could well be in promiscuous mode for some other reason.)
For now, this doesn't work on the "any" device; if an argument of "any" or NULL is supplied, the promisc flag is ignored. to_ms specifies the read timeout in milliseconds. The read timeout is used to arrange that the read not necessarily return immediately when a packet is seen, but that it wait for some amount of time to allow more packets to arrive and to read multiple packets from the OS kernel in one operation. Not all platforms support a read timeout; on platforms that don't, the read timeout is ignored. A zero value for to_ms, on platforms that support a read timeout, will cause a read to wait forever to allow enough packets to arrive, with no timeout. errbuf is used to return error or warning text. It will be set to error text when pcap_open_live() fails and returns NULL. errbuf may also be set to warning text when pcap_open_live() succeds; to detect this case the caller should store a zero-length string in errbuf before calling pcap_open_live() and display the warning to the user if errbuf is no longer a zero-length string.
Special note about snaplen
argument. The behaviour of
this argument may be suprizing to some. The argument
is only
applied when there is a filter set using setFilter
method
after the openLive
call. Otherwise snaplen, even non zero is
ignored. This is the behavior of all BSD systems utilizing BPF and WinPcap.
This may change in the future, but that is the current behavior. (For more
detailed explanation and discussion please see jNetPcap website and its
FAQs.)
device
- buffer containing a C, '\0' terminated string with the the
name of
the device
snaplen
- amount of data to capture per packet; (see special note
in doc
comments about when this argument is ignored even when non-zero)
promisc
- 1 means open in promiscious mode, a 0 means
non-propmiscous
timeout
- timeout in mserrbuf
- a buffer that will contain any error messages if the call
to open
failed
pcap_t
C structure as
returned by native libpcap call to open
Pcap.openLive(String,
int, int, int, StringBuilder)
public static WinPcap openOffline(java.lang.String fname, java.lang.Appendable errbuf) throws java.io.IOException
fname
- filename of the pcap fileerrbuf
- any error messages in UTC8 encodingjava.io.IOException
- Signals that an I/O exception has occurred.
Pcap.openOffline(String,
StringBuilder)
public static WinPcap openOffline(java.lang.String fname, java.lang.StringBuffer errbuf)
fname
- filename of the pcap fileerrbuf
- any error messages in UTC8 encodingPcap.openOffline(String,
StringBuilder)
public static WinPcap openOffline(java.lang.String fname, java.lang.StringBuilder errbuf)
fname
- filename of the pcap fileerrbuf
- any error messages in UTC8 encodingPcap.openOffline(String,
StringBuilder)
public static WinPcapSendQueue sendQueueAlloc(int size)
sendQueueTransmit(org.jnetpcap.winpcap.WinPcapSendQueue,
int)
method.
size
- size of the sendqueue to allocatesendQueueTransmit(WinPcapSendQueue,
int)
public static void sendQueueDestroy(WinPcapSendQueue queue)
queue
- the queue to free upprivate static void toAppendable(java.lang.StringBuffer buf, java.lang.Appendable appendable) throws java.io.IOException
buf
- sourceappendable
- destinationjava.io.IOException
- any IO errors produced by the appendableprivate static void toStringBuilder(java.lang.StringBuffer buf, java.lang.StringBuilder builder)
buf
- sourcebuilder
- destinationpublic int liveDump(java.lang.String fname, int maxsize, int maxpackets)
fname
- file namemaxsize
- maximum file sizemaxpackets
- maximum number of packets to storepublic int liveDumpEnded(int sync)
sync
- if sync is nonzero, the function blocks until the dump is
finished, otherwise returns immediately
public int sendQueueTransmit(WinPcapSendQueue queue, int synch)
queue
- queue containing the data to be sentsynch
- if it is non-zero, the packets are sent respecting the
timestamps,
otherwise they are sent as fast as possible
public int setBuff(int dim)
dim
- specifies the size of the buffer in bytesopenLive(String,
int, int, int, StringBuffer)
,
Pcap.loop(int,
PcapHandler, Object)
,
Pcap.dispatch(int,
PcapHandler, Object)
public int setMinToCopy(int size)
size
- minimum sizeopenLive(String,
int, int, int, StringBuffer)
,
Pcap.loop(int,
PcapHandler, Object)
,
Pcap.dispatch(int,
PcapHandler, Object)
public int setMode(int mode)
mode
- pcap capture modepublic WinPcapSamp setSampling()
Define a sampling method for packet capture. This function allows applying a sampling method to the packet capture process. The currently sampling methods (and the way to set them) are described into the struct pcap_samp. In other words, the user must set the appropriate parameters into it; these will be applied as soon as the capture starts.
Warning:
Sampling parameters cannot be changed when a capture is active. These
parameters must be applied before starting the capture. If they are applied
when the capture is in progress, the new settings are ignored. Sampling
works only when capturing data on Win32 or reading from a file. It has not
been implemented on other platforms. Sampling works on remote machines
provided that the probe (i.e. the capturing device) is a Win32 workstation.
public WinPcapStat statsEx()
Pcap.stats
method and allows
more
statistics to be returned. Note, the signature of this method deviates
slightly from WinPcap implementation due to programming differences of
java. There is no need to deallocate any structures.
return
stats structure which is
filled with statistics or null on error


Mission: Impossible 2
rated PG-13 123 minutes Paramount Pictures starring Tom Cruise, Dougray Scott, Thandie Newton, and Ving Rhames written by Robert Towne directed by John Woo
A Review by Frankie Paiva
Mission: Impossible 2 opens with a thrilling plane crash that employs the classic use of masks from the television show and last movie. It gave me high hopes for a thrilling sequel, but when the movie approached its conclusion, I realized it had cheated me out of any real human emotion. The occasional, "That was cool!" escaped my lips, but as the film droned on, even those got fewer and farther in between. This is the problem at the core of this mission. The characters are virtually cardboard cutouts with the amazing ability to walk, talk, develop toned muscles, and wear outfits with maximum cleavage. They're like those cardboard standups you find at party stores of Marilyn Monroe and James Dean, and their reactions are just the same.
Our hero, Ethan Hunt (Tom Cruise), gets assigned to stop a virus that causes rapid cell destruction, killing anyone injected with it after twenty hours. He must get thief Nyah Hall (Thandie Newton, little known to most, unless you saw Beloved or Besieged) to join the impossible team. Within fifteen minutes of the movie's running time the two have already slept together. He woos Nyah (no pun intended) with lines like, "Damn you're beautiful." The team, which also includes Luther Stickell, Ving Rhames's character from the last movie, must stop the virus from getting into the hands of evil agent Ambrose (Dougray Scott). Ambrose wants to buy stock in the company with virus's antidote. Then he would cause an outbreak of the disease, making his stock skyrocket to millions of dollars.  All of these scenes involve Tom and his bulging muscles with Thandie looking doe-eyed, helpless, and dependent on Tom for her every need and desire. Also popping up for a couple of scenes is Anthony Hopkins who I think is just starting to get pretty darn annoying.
While the above plot outline may not sound complex, the plot the movie presents you with is. Like too many action and horror movies, the characters grasp things too quickly as if someone were explaining to them what had just happened, and how to fix it. Often, this loses the audience. A couple of times in the movie, a Russian doctor tells Hunt that their situation isn't that complicated. All I was thinking about shouting back to the screen was, "Yes! It is!"  Another problem with this sequel (and to a lesser degree the previous film) is that it really has nothing to do with the original Mission: Impossible television show. I watched a couple of old episodes of the program after seeing this movie, and I couldn't find any resemblance between the two at all.  The masks are overdone as well, to the point where they just get too predictable. Also missing is the use of cool, complicated gadgets. The team uses a variety of high tech devices like digital cameras and GPS tracking systems. Both of which got introduced at least two years ago and have already become integrated into the more techno savvy homes in America. Did the team lose the pack of exploding gum?
To be honest, Mission: Impossible 2 isn't an entirely bad film. There are some effective stunts, especially near the end, that obviously originate from famous action director John Woo. However, by the time the film got to the level of action expected, I was too mindless from the previous proceedings to care. It's really disappointing when talented actors like these can't pull a movie off. Tom Cruise proved he can still act with his Oscar nomination for Magnolia, but that film gets forgotten quickly. Likewise, Thandie Newton, who I loved in Besieged, ends up looking like a three year-old baby doll.
So buy the biggest popcorn available, and get that extra large drink.
D
Frankie Paiva<EMAIL_ADDRESS>http://www.homestead.com/cinemaparadise/mainpage.html
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


oval(x, y, width, height, plot=True, **style)
Draws an ellipse to the screen. The x
and y
parameters set the location of the oval's top-left ‘corner’. The third parameter sets the width, and the fourth sets the height (i.e., setting them to the same value will yield a circle).
fill(0.2) oval(10,20, 40,40)


Getting Started with HTML
The Basics of the Web
a. The Web
b. HTML
c. urls
d. HTTP
e. web applications
The World Wide Web
Invented in the early 1990's, the world wide web is a collection of HTML documents.
HTML stands for Hyper Text Markup Language.
It is the basis for almost every webpage.
The links between pages are hyperlinks
or links for short. They make the web "web-like".
Major Concepts
Your browser makes requests via the internet to servers, computers that host the files that make up the web.
These requests are using a protocol called http, the main protocol of the web.
The servers respond with files that your browser displays.
Examples of browsers: Internet Explorer, Chrome, FireFox
HTML is made up of
-text content: what you see
-mark up: what it looks like (how it's arranged)
-reference to other documents: images and videos
-links to other pages
HTML markup
Markup is made up of "tags", it includes (1) a less than symbol, (2) the tag name,
(3) the greater than symbol, (4) the contents, which can be other tags or just simply text,
and (5) another less than symbol with a slash and tag name, ending with a greater than symbol.
Names are always the same, the only difference is the closing tag has a slash in front of the name.
The whole thing can also be referred to as an element.
Tags
Different tags can influence the effect of the text, for example,
the b-tag,(< b >) makes anything between the opening tag and closing tag appear bold . The < em > tag
makes text italized. If you forget to close the tag, everything after the opening tag will follow
the instructions given by the first tag. That is why we sometimes refer to computers as being "stupid", due
to their literal interpretations of all our commands.
The image tag < img >, allows you to include images. **Images do not have a closing tag because there are no
contents to an image. It is known as a void tag.
HTML attributes
You can render things in html that link urls to certain words in a text. Such as this.
The video linked to that explains how to use the < a >, anchor tag, very efficiently.
Inline/Block
There are two different ways of making a break. The < br > is inline, where the < p > is block. The block makes an invisible
box around the text, and you can adjust the height and width.


- setFlags(String[]) - Method in class com.smartcar.sdk.SmartcarAuth.AuthUrlBuilder
-
Enable early access features.
- setForcePrompt(boolean) - Method in class com.smartcar.sdk.SmartcarAuth.AuthUrlBuilder
-
Force display of the grant approval dialog in Smartcar Connect.
- setMakeBypass(String) - Method in class com.smartcar.sdk.SmartcarAuth.AuthUrlBuilder
-
Bypass the brand selector screen to a specified make.
- setSingleSelect(boolean) - Method in class com.smartcar.sdk.SmartcarAuth.AuthUrlBuilder
-
Ensure the user only authorizes a single vehicle.
- setSingleSelectVin(String) - Method in class com.smartcar.sdk.SmartcarAuth.AuthUrlBuilder
-
Specify the vin a user can authorize in Smartcar Connect.
- setState(String) - Method in class com.smartcar.sdk.SmartcarAuth.AuthUrlBuilder
-
Set an optional state parameter.
- SmartcarAuth - Class in com.smartcar.sdk
-
Main class that provides SDK access methods.
- SmartcarAuth(String, String, String[], SmartcarCallback) - Constructor for class com.smartcar.sdk.SmartcarAuth
-
Constructs an instance with the given parameters.
- SmartcarAuth(String, String, String[], boolean, SmartcarCallback) - Constructor for class com.smartcar.sdk.SmartcarAuth
-
Constructs an instance with the given parameters.
- SmartcarAuth.AuthUrlBuilder - Class in com.smartcar.sdk
-
A builder used for generating Smartcar Connect authorization URLs.
- SmartcarCallback - Interface in com.smartcar.sdk
-
Callback interface that should be implemented by the application.
- SmartcarCodeReceiver - Class in com.smartcar.sdk
-
Activity that receives the response sent to the custom URL scheme defined by the application.
- SmartcarCodeReceiver() - Constructor for class com.smartcar.sdk.SmartcarCodeReceiver
-
- SmartcarResponse - Class in com.smartcar.sdk
-
A class that creates the response from Smartcar Connect.
- SmartcarResponse.Builder - Class in com.smartcar.sdk
-
- state(String) - Method in class com.smartcar.sdk.SmartcarResponse.Builder
-


Spreadsheets can be ingested and used to create a workflow and load samples and measurements. The first column must be the name of the sample. The second column is optional and contains the name of the worksheet that is the process that this sample came from. The remaining rows are process and sample attributes. Sample attributes are designated with a "S:" or "s:", process attributes are designated with a "P:" or "p:". If you don't designate a column then it is assumed to be a sample attribute.
Units are specified in the header at the end of the header by enclosing them in paranthesis. For example "s:grain size(mm)" would designate a sample attribute named "grain size" with units in "mm".
If you have a parent column then each of your sample names must be unique in a worksheet. If you do not have a parent column then this restriction doesn't apply.
Below is an example layout that includes a parent column.
| Sample | Parent (optional) | P:Process Attribute(unit) | S:Sample Attribute(unit) |
|---|---|---|---|
| S1 | Worksheet Name | 44 | 22 |


Facial Expression Recognition using OpenCV and Keras
Facial Expression Recognition is an application of Computer Vision, a boon of AI, which enables the computer recognise a person's emotion on the basis of his/her facial expression. Its main applcations are listed below:
Applications:
- It can be used to detect the predominant emotion of a person while doing a particular activity like giving a lecture, watching a video, reading a post, etc.
- It can be used to find how funny or emotional a particular video, or post, or image is by determing the facial expression of many people.
- It can be used to detect mental disorders.
- It can help prevent riots by detecting the anger emotion among multiple people.
- It help the human users monitor their stress level.
- It can help AI assistants to recommend videos or songs or say things according to the emotion of the user, like cheering them when they are sad and sounding happy,when a person is happy. This way, we can create good AI friends and help remove loneliness from people's lives.
Aim of this project:
Training a convolutional neural network to recognise 7 kinds of emotions (Happy, Anger, Sad, Fear, Disgust, Surprise, Neutral) after detection of face in real time video camera and giving the prediction.
The dataset used for training and testing the model:
It consists of the training (28,709 images) and the testing (7,178 images) set comprising of images of people's faces with the 7 kinds of expressions mentioned above. The class-distribution of the training set is as follows:
- 3171 surprise images
- 7215 happy images
- 4965 neutral images
- 3995 angry images
- 4830 sad images
- 436 disgust images
- 4097 fear images
A brief dicussion of Convolutional Neural Networks:
In neural networks, Convolutional neural network (ConvNets or CNNs) is one of the main categories for image recognition, image classifications, object detection, face recognition, etc. These are some of the areas where CNNs are widely used. CNN's work on the principle of extracting low-level features in the earlier layers, like edges in the image, to more complex features in the deeper layers using complex mathematical operations (called convolving) on the pixel values of the given image using mathematical entities called filters.
Convolutional Neural Networks have 2 main components:
- Feature learning: We see convolution, ReLU,Pooling layer phases here. Edges,shades,lines,curves, in this feature learning step get extracted.
- Classification: We see Fully Connected(FC) layer in this phase. They will assign a probability for the object on the image according to what our CNN model predicts.
For more detailed information refer to this link.
Our model:
This model has been taken from a research paper by Stanford University on finding the best model for facial expression recognition.
It consists of 4 convolutional blocks, each comprising of:- Convolutional layer of a number of filters (increaing by powers of 2 in each layer) for feature extraction
- Batch Normalisation for normalising the inputs fed into the next layer for avoiding covariate shift.
- Maxpooling for extracting the most prominent feature in the feature maps produced after applying the convolution operations and reducing the spatial size of the representation to reduce the amount of parameters and computation in the network
- Rectified Linear Unit Activation Function for allowing the model to create complex mappings between the network’s inputs and outputs, which are essential for learning and modeling complex data, such as images and data sets like these which are non-linear and have high dimensionality.
- Dropout for randomly shutting of some neurons in the layer for avoiding overfitting to the data i.e. to prevent our network from learning the deviations in the training data so well, that the network does not generalise on new, unseen data.
The extracted features by the CNN is now passed through two fully connected layers with the same architecture as the convolutional blocks and then a softmax to make the final prediction on the basis of the probabilities of the 7 emotions predicted.
Functions, Validation Accuracy:
The graphs of the loss-function and the accuracy vs the epochs for the training and testing set are shown below:
The model.py script
This python script utilises the saved model and its weights and outputs the prediction out of the given list of emotions. This script creates a model object and defines its corresponding functions like .predict_emotion in a class called FacialExpressionModel, which will be used by the camera.py python script as described below, to output the model's prediction after detecting the face.
The camera.py script
We use OpenCV's cv2 library and the haarcascade_frontalface_default.xml file in this to detect the face, grayscale it(since our model only understands grayscale images), put a rectangular box around it and output the corresponding prediction beside the rectangular box. We will use the model we trained through its json file we saved. We will put the the value in cv2.videocapture as 0, so that we can make prediction through webcam in real time video.
The main.py script
After we have detected faces using haarcascade and created a webpage to display video, we will integrate these two modules with our server, using flask and display it in our localhost. This is the script that integrates all other files we have created in this project. This will be executed in the terminal to get the final output.
Implementation in Jupyter Notebook
Some screenshots of the final output in our browser :
So you have completed this topic. Congratulations
Hope you learnt something new
Happy Learning!! 📚


| Top |
WebKitNetworkProxySettings can be used to provide a custom proxy configuration
to a WebKitWebContext. You need to call webkit_web_context_set_network_proxy_settings()
with WEBKIT_NETWORK_PROXY_MODE_CUSTOM
and a WebKitNetworkProxySettings.
WebKitNetworkProxySettings * webkit_network_proxy_settings_new (const gchar *default_proxy_uri
,const gchar * const *ignore_hosts
);
Create a new WebKitNetworkProxySettings with the given default_proxy_uri
and ignore_hosts
.
The default proxy URI will be used for any URI that doesn't match ignore_hosts
, and doesn't match any
of the schemes added with webkit_network_proxy_settings_add_proxy_for_scheme()
.
If default_proxy_uri
starts with "socks://", it will be treated as referring to all three of the
socks5, socks4a, and socks4 proxy types.
ignore_hosts
is a list of hostnames and IP addresses that the resolver should allow direct connections to.
Entries can be in one of 4 formats:
A hostname, such as "example.com", ".example.com", or "*.example.com", any of which match "example.com" or any subdomain of it.
An IPv4 or IPv6 address, such as "<IP_ADDRESS>", which matches only that address.
A hostname or IP address followed by a port, such as "example.com:80", which matches whatever the hostname or IP address would match, but only for URLs with the (explicitly) indicated port. In the case of an IPv6 address, the address part must appear in brackets: "[::1]:443"
An IP address range, given by a base address and prefix length, such as "fe80::/10", which matches any address in that range.
Note that when dealing with Unicode hostnames, the matching is done against the ASCII form of the name.
Also note that hostname exclusions apply only to connections made to hosts identified by name, and IP address exclusions apply only
to connections made to hosts identified by address. That is, if example.com has an address of <IP_ADDRESS>, and ignore_hosts
contains only "<IP_ADDRESS>", then a connection to "example.com" will use the proxy, and a connection to <IP_ADDRESS>" will not.
default_proxy_uri |
the default proxy URI to use, or |
[allow-none] |
ignore_hosts |
an optional list of hosts/IP addresses to not use a proxy for. |
[allow-none] |
Since: 2.16
WebKitNetworkProxySettings *
webkit_network_proxy_settings_copy (WebKitNetworkProxySettings *proxy_settings
);
Make a copy of the WebKitNetworkProxySettings.
Since: 2.16
void
webkit_network_proxy_settings_free (WebKitNetworkProxySettings *proxy_settings
);
Free the WebKitNetworkProxySettings.
Since: 2.16
void webkit_network_proxy_settings_add_proxy_for_scheme (WebKitNetworkProxySettings *proxy_settings
,const gchar *scheme
,const gchar *proxy_uri
);
Adds a URI-scheme-specific proxy. URIs whose scheme matches uri_scheme
will be proxied via proxy_uri
.
As with the default proxy URI, if proxy_uri
starts with "socks://", it will be treated as referring to
all three of the socks5, socks4a, and socks4 proxy types.
proxy_settings |
||
scheme |
the URI scheme to add a proxy for |
|
proxy_uri |
the proxy URI to use for |
Since: 2.16


--- layout: post title: Today is Our Seventh Wedding Anniversary categories: [] tags: - anniversary - family - love status: publish type: post published: true meta: _original_post_id: '' _original_import_author: John Duprey author: ---
The face of love will change with time
Like the mortal shells of lovers themselves
The foolish fail to recognize it still
And betray what their heart knows true
The rest, like me, heed God's Will
I will always love you
-JWD


West Brom 2 Sheffield Wednesday 1: Joe Masi and Luke Hatfield analysis - VIDEO
Watch Joe Masi and Luke Hatfield analyse West Brom's win over Sheffield Wednesday.
by Luke HatfieldAlbion went one up through Hal Robson-Kanu's strike, but were pegged back second half after Steven Fletcher fired home from the spot.
Charlie Austin was the hero though, as he replied with a penalty kick of his own after Matheus Pereira was fouled by Keiren Westwood.
Watch our pair have their say on the result here...


Home
|
Stores
|
Delivery
|
Contact Us
|
Account Card
|
Site Map
|
Shopping Basket
is empty
To find
THE STORE NEAREST YOU
click here!


‘imports’ a string – converts a string to a Python object, importing any necessary modules and evaluating the expression. Everything before the : in an import expression is the module path; everything after is an expression to be evaluated in the namespace of that module.
Alternately, if no : is present, then import the modules and get the attributes as necessary. Arbitrary expressions are not allowed in that case.
Import a module, or import an object from a module.
A module name like foo.bar:baz() can be used, where foo.bar is the module, and baz() is an expression evaluated in the context of that module. Note this is not safe on arbitrary strings because of the eval.
Import a module, or import an object from a module.
A name like foo.bar.baz can be a module foo.bar.baz or a module foo.bar with an object baz in it, or a module foo with an object bar with an attribute baz.
Import a module.
Imports a module, but catches import errors. Only catches errors when that module doesn’t exist; if that module itself has an import error it will still get raised. Returns None if the module doesn’t exist.


Wavelet Analysis
Introduction
Many time series in geophysics exhibit non-stationarity in their
statistics. While the series may contain dominant periodic signals,
these signals can vary in both amplitude and frequency over long
periods of time.
An example would be sea surface temperatures in the
equatorial Pacific Ocean (Figure 1).
The dominant "mode" of variability is the
El Niño-Southern Oscillation (ENSO), shown by the high-frequency
"spikes" on a time scale of 2-7 years.
Superimposed on this signal are much longer interdecadal fluctuations.
The interdecadal fluctuations have the effect of modulating the
amplitude and frequency of occurance of El Niño events.
-
Fig. 1.
- Sea surface temperatures averaged over the NINO3 region
in the eastern Pacific (5°S-5°N, 90°W-150°W).
Blue curve is low-pass filtered (>12 months) SST.
Yellow background curve is running 15-year variance, plotted
at mid-point of 15-year period. Curve has been reproduced upside-down
to show "envelope" of variance.
Ideally, one would like to separate the shorter period
oscillations from the longer.
[Note: the word "oscillation" is used here to indicate
any repeating fluctuation in the timeseries, regardless of whether
the fluctuation repeats on a regular basis or not. In our example the
El Niño is definitely an aperiodic (irregular) signal.]
The simplest method for analyzing non-stationarity
of a timeseries would be to compute statistics such as the
mean and variance
for different time periods and see if they are significantly different.
In Figure 1 we have also plotted the running 15-year variance, as
a measure of total power inherent in the signal versus time.
One can see that ENSO had more variance during 1880-1920
and also since 1950,
with a relatively quiet period during 1920-1950.
While the running variance tells
us what the overall strength of the
signal was at certain times, it suffers from two major defects:
- [Time Localization]
The shape of the curve is highly dependent on the length of
the window used. Fifteen years was chosen above as a compromise between
either too-much smoothness (say using a 30-year window),
or too-little (a 5-year window). An ideal method would allow different
window sizes depending on the scales that one is interested in.
- [Frequency Localization]
The running variance contains no information on the frequency
of a periodic signal,
only its amplitude (and that only if the window is chosen widely).
One possibility would be to do a windowed (or
running) Fourier transform (WFT), using a certain window size and
sliding it along in time, computing the FFT at each time using only
the data within the window. This would solve the second problem
(frequency localization), but would still be dependent on the window
size used. The main problem with the WFT is the inconsistent treatment
of different frequencies: at low frequencies there so few oscillations
within the window that the frequency localization is lost, while at
high frequencies there are so many oscillations that the time
localization is lost. Finally, the WFT relies on the assumption that
the signal can be decomposed into sinusoidal components.
Wavelet analysis attempts to solve these problems by
decomposing a timeseries into time/frequency space simultaneously.
One gets information on both the amplitude of any "periodic" signals
within the series, and how this amplitude varies with time.
back to Wavelet Home Page


Provides a way to thin or thicken artwork.
Syntax
<feMorphology operator="actionname" radius="number" />
DOM Information
Inheritance Hierarchy
Members
The SVGFEMorphologyElement object has these types of members:
Properties
The SVGFEMorphologyElement object has these properties.
| Property | Description |
|---|---|
|
Gets or sets the height of an element. | |
|
Identifies input for the given filter primitive. | |
|
Specifies the operation of whether to thin or thicken. | |
|
Specifies the thickening or thinning you want to apply in the X direction. | |
|
Specifies the thickening or thinning you want to apply in the Y direction. | |
|
Provides a reference for the output result of a filter. | |
|
Defines the width of an element. | |
|
Gets or sets the x-coordinate value. | |
|
Gets or sets the y-coordinate value. |
Standards information
- Scalable Vector Graphics: Filter Effects, Section 15.25.23
Remarks
You can specify thickness or thinness by using the operator property.
You can specify how much you what to thicken or thin by using the radius, radiusX, and radiusY properties.
Examples
This example shows a simple text element and two morphology filters applied to the same text. The first filter thins the text with an operator value of erode and a radius value of 1. The second filter thickens the text with an operator value of dilate and and radius value of 1.2.
The image will look like this.
<!DOCTYPE HTML> <html> <head> </head> <body> <svg width="400" height="400"> <defs> <filter id="MyFilter1" filterUnits="userSpaceOnUse" x="50" y="50" width="300" height="300"> <feMorphology operator="erode" radius="1" /> </filter> <filter id="MyFilter2" filterUnits="userSpaceOnUse" x="50" y="50" width="300" height="300"> <feMorphology operator="dilate" radius="1.2" /> </filter> </defs> <g font-family="Verdana" font-size="36" stroke="black" stroke-width="2"> <text x="50" y="50"> Unfiltered </text> <text x="50" y="150" filter="url(#MyFilter1)"> Erode </text> <text x="50" y="250" filter="url(#MyFilter2)"> Dilate </text> </g> </svg> </body> </html>
Build date: 1/13/2014


Sorry, this example cannot be run because your browser does not support the <canvas> element
UP
to accelerate forward,
LEFT/RIGHT
to turn,
SPACEBAR
to shoot


--- layout: eachproject title: Buffer Multiline description: ESRI shapefile of Polyline type has been buffered into multiline ---
The dataset and code can be found in this github repo.
import os
from glob import glob
import re
import fiona
from shapely.geometry import mapping, shape, LineString, Polygon
# Set up the work environment
workdir = os.getcwd()
indir = os.path.join(workdir, "Indata", "vector")
inLineShp = os.path.join(indir, "Adams_IL_Is.shp")
assert os.path.exists(inLineShp), "The specified file does not exist"
outdir = os.path.join(workdir, "Outdata", "Buffer_a_Line")
if not os.path.exists(outdir):
os.makedirs(outdir)
# Buffer radius (in the units of the shapefile)
bufferRadius = 24.
with fiona.open(inLineShp, 'r') as src:
outmeta = src.meta
print("Units of measurement: {}".format(outmeta['crs']['units']))
outmeta['schema']['geometry'] = 'Polygon'
with fiona.open(outdir + os.sep + "Buffered_Adams_Is.shp", "w", **outmeta) as dest:
for feature in src:
buffered_feature = mapping(shape(feature['geometry']).buffer(bufferRadius))
dest.write({
'properties':feature['properties'],
'geometry':buffered_feature,
})


Try writing in the input field:
The input's valid state is:
The input field must contain the character "e" to be consider valid.


| Class and Description |
|---|
| CommunoteAuthenticationFilter
Interface to define filters, which could be provided by plugins.
|
| CommunoteAuthenticationProvider
Interface for orderable authentication providers, which could be implemented by plugins.
|
| Class and Description |
|---|
| SwitchUserNotAllowedException
Exception indicating that the current use had no right to change to another user
|
| Class and Description |
|---|
| UserIdentification
The user identification provides information on identifying a particular user.
|
| Class and Description |
|---|
| AccountNotActivatedException
Thrown to indicate that the user account is not in state ACTIVE.
|
| AccountPermanentlyDisabledException
Thrown to indicate that the account is permanently disabled.
|
| AccountPermanentlyLockedException |
| AccountTemporarilyDisabledException
Thrown to indicate that the account is temporarily disabled.
|
| AccountTemporarilyLockedException |
| AuthenticationManagement
Service methods for user authentication.
|
| AuthenticationManagementBase
Spring Service base class for
com.communote.server.core.api.security.AuthenticationManagement , provides access to
all services and entities referenced by this service. |
| CommunoteAuthenticationFilter
Interface to define filters, which could be provided by plugins.
|
| CommunoteAuthenticationProvider
Interface for orderable authentication providers, which could be implemented by plugins.
|
| FieldUserIdentification
A UserIdentification that is map holding some attributes.
|
| SwitchUserNotAllowedException
Exception indicating that the current use had no right to change to another user
|
| TermsNotAcceptedException
Thrown to indicate that the user has not yet accepted the terms of use or the privacy policy.
|
| UserDetails
Value object with user details which is compatible to the spring security framework.
|
| UserIdentification
The user identification provides information on identifying a particular user.
|
| Class and Description |
|---|
| UserDetails
Value object with user details which is compatible to the spring security framework.
|
| UserIdentification
The user identification provides information on identifying a particular user.
|
| Class and Description |
|---|
| UserDetails
Value object with user details which is compatible to the spring security framework.
|
| Class and Description |
|---|
| UserDetails
Value object with user details which is compatible to the spring security framework.
|
| Class and Description |
|---|
| UserDetails
Value object with user details which is compatible to the spring security framework.
|
| Class and Description |
|---|
| UserIdentification
The user identification provides information on identifying a particular user.
|
| Class and Description |
|---|
| UserIdentification
The user identification provides information on identifying a particular user.
|
| Class and Description |
|---|
| AuthenticationFilterManagement |
| Class and Description |
|---|
| AuthenticationProviderManagement
Management for handling with
CommunoteAuthenticationProvider . |
Copyright © 2019 Communote team. All rights reserved.


| PWG Toronto, Canada Meeting Details |
UPDF: July 30
uPnP Printing & Scanning: July 31 (uPnP members only)
PWG Plenary: August 1 (8:30AM - 9:30AM)
IPP Fax: August 1 (9:30AM - 6:00PM)
| Meeting
Location: Renaissance Toronto Hotel at Skydome One Blue Jays Way Toronto, Ontario, Canada M5V 1J4 Phone:<PHONE_NUMBER> or 1-800-237-1512 |
The hotel rate is $199 CN (about $130 US) per night.
Ask for the Printer Working Group/PWG or
IEEE-ISTO rate at this hotel.
Deadline for reservations is July 6, 1998. All attendees are responsible for making their own
hotel reservations.
***Please contact Cindy Tiritilli at<EMAIL_ADDRESS>if for any reason you are unable to obtain the negotiated room rate.****
There will be a meeting charge of $45 US; participants are
responsible for their own lunch.
YOU MUST REGISTER AT: https://www.ieee-isto.org/pwg/registration.html
Please contact Cindy Tiritilli, IEEE-ISTO PWG Program Administrator at
+1-732-981-3434 or<EMAIL_ADDRESS>if you have any questions.


This are the FrameTypes used in the fdfAction Frame, they uppercase only and a expected to be inside "".
Frames can be seen as seperated into 2 Groups: Frames and SimpleFrames. While both can use most Frame-natives, they work quite different from each other and can not be parent/child for the other group.
SimpleFrames are: SIMPLEBUTTON, SIMPLECHECKBOX, SIMPLEFRAME, SIMPLEGRID, SIMPLESTATUSBAR and the special Child-Frames String and Texture.


Type Event Dispatch chain ▸ Runtime Revision Current Public Release (2013.2076) Keywords memoryWarning Sample code /CoronaSDK/SampleCode/ See also system.getInfo()
This event is currently only available on iOS.
The iOS low memory warning is exposed as a Corona event type named "memoryWarning"
, sent to the Runtime object. This event has no fields.
When this event fires, the OS reserves the right to forcibly shut down the application in about five seconds (although it may or may not do so). Apple advises developers to listen for this warning, and to handle it by freeing as much memory as possible when it is received.
You can monitor texture memory used by calling system.getInfo( "textureMemoryUsed" )
. This returns the texture memory usage (in bytes). Texture memory (for graphics/images) tends to be the most sharply limited resource in mobile development, since it runs out before normal memory.
Runtime:addEventListener( "memoryWarning", listener )
Listener. An event listener to be notified when a low memory situation occurs.
local function handleLowMemory( event )
print( "memory warning received!" )
end
Runtime:addEventListener( "memoryWarning", handleLowMemory )


- All Known Implementing Classes:
ServerContext
public interface ServerVisitor
-
Method Summary
-
Method Details
-
Log a message.
- Parameters:
level
- One of the message level identifiers, e.g., SEVERE.
msg
- The string message (or a key in the message catalog).
-
Try to login the client to the server.
It succeeds if the logins are registered in the database.
- Parameters:
login
-
password
-
-
Try to login the client to the server.
It succeeds if the given login is not already authenticated by the server
and does not exists in the database.
- Parameters:
login
-
-
void answerFromDatabase(long id,
boolean positiveAnswer)
Authenticates or deny the authentication of a client
according to the database answer.
- Parameters:
id
- The identifier of the request to the database.
positiveAnswer
- The response, True if positive, False if negative.
-
Broadcast a public message to the server, so every connected client
can receive it.
- Parameters:
message
- The message to broadcast.
- Throws:
IllegalStateException
- If the client is not able to send a broadcast a frame.
-
Send a frame to a specific client connected to the server.
- Parameters:
frame
- The frame to send.
dest
- The recipient client's login.
- Throws:
IllegalStateException
- If the client is not able to send a frame to another client.
IllegalArgumentException
- If the recipient client does not exist or is not able to receive a frame.
-
void sendBackFrame(
Frame frame)
Send a frame to this client.
- Parameters:
frame
- The frame to send.
-
Retrieve the client's login.
- Returns:
- The client login.
-
Retrieve the client's IP address.
- Returns:
- The client's IP address.
- Throws:
IOException


Get discount on services and treatments at the GymBase on new registration on yearly subscription.
learn moreWe have been the authorized fiteness center since 1965. It was then that fitness legend Kevin O'brien took the knowledge and expertise
Today We are the most recognized name in fitness serving more than 10 thousand members.
 We offer 25- and 50-minute sessions that...
Keep your promise to more than just you. Partner up with a friend or family...
Take a BaseGym's fitness class and learn from world-class instructors in a fun, fast paced environment. Whether you’re looking to kick your fitness into high gear with Kickboxing or achieve inner and outer peace with Yoga, we offer classes that appeal to all interests and fitness levels.
learn moreTake a BaseGym's fitness class and learn from world-class instructors in a fun, fast paced environment. Whether you’re looking to kick your fitness into high gear with Kickboxing or achieve inner and outer peace with Yoga, we offer classes that appeal to all interests and fitness levels.
Eorem ipsum dolor sit amet consectetur adipisicing elit sed eiusmod tempor abore dolore magna aliqua aut enim minim veniama nostrud exsa sed citation saboris
Per month
Per month
Per month


Market App
Time:
Date:
First Name:
Last Name:
Username
Status
--Select status--
Farmer
Consumer
County
Location
Email
Password
Confirm Password
Back
Adverts Here


{% extends "base.html" %} {% block content %}
Graphs and Vertices (Called Nodes in the GraphViz notation) may have a large number of attributes that affect both the graph's actual layout, and details like colours, labels, and line types. I cover a few of the attributes below but for a full reference see the GraphViz Attribute Index
label="My Graph";
Label a graph itselfrankdir=LR;
Lay the graph out from Left to Right, instead of Top to
Bottom
{rank=same; a, b, c }
Group nodes together at the same level of a graph
splines="line";
Force edges to be straight, no curves or anglesK=0.6;
Used to influence the 'spring' used in the layout, Can be used to
push
nodes further apart,
which is especially useful for twopi and sfdp layouts
[label="Some Label"]
Labels the Vertex[color="red"]
Colors the Vertex[fillcolor="blue"]
Fills the Vertex with the specified colour[label="Some Label"]
Labels the Edge (Useful for Weights)[color="red"]
Colors the Vertex (Useful for Paths)[penwidth=2.0]
Adjusts the thickness of the edge line, Very useful for
Paths
weight
attribute, defined as
[weight=0.5]
for example,
but note that this doesn't display the weight directly, It instead acts as a hint to the graph layout to
give this
edge a more
direct routing.
graph
or a digraph
using
fairly standard syntax, similar to an edge list. graph {
node1 -- node2;
node3 -- node2;
}
digraph {
node1 -> node2;
node3 -> node2;
}
A, B, C, Test, Vertice1,
some_vertex
, etc.
If you need a more complicated label you can declare the vertex first, before defining an edge, and give it
a label
attribute,
for example: digraph {
someVertex[label="A Complicated Label"];
someVertex -> node2;
node2 -> node3;
}
digraph {
node1 -> node2[color="red"];
}
digraph {
node1 -> node2[label="0.2"];
node2 -> node3[label="0.2"];
}
digraph {
node1 -> node2[label="edge1"];
node2 -> node3[label="edge2"];
}
digraph {
node1[label="Some Complicated Label"];
node1 -> node2[label="An Edge",color=red];
node2 -> node3;
}


Before Change
num_layers = len(self.layers)
prev_hiddens = [encoder_hiddens[i] for i in range(num_layers)]
prev_cells = [encoder_cells[i] for i in range(num_layers)]
input_feed = x.data.new(bsz, self.encoder_output_units).zero_()
attn_scores = x.data.new(srclen, seqlen, bsz).zero_()
outs = []
After Change
prev_cells = [encoder_cells[i] for i in range(num_layers)]
if self.encoder_hidden_proj is not None:
prev_hiddens = [self.encoder_hidden_proj(x) for x in prev_hiddens]
prev_cells = [self.encoder_cell_proj(x) for x in prev_cells]
input_feed = x.new_zeros(bsz, self.hidden_size)
attn_scores = x.new_zeros(srclen, seqlen, bsz)
outs = []


Geo Search Tool
Location
Time Frame
Any Time
Past Hour
Past 3 Hours
Past 6 Hours
Past 9 Hours
Past 12 Hours
Past 24 Hours
Past Week
Past 30 days
Past Year
Custom Range
Start Date
End Date
* use mm-dd-yyyy format
Show Advanced Search
Hide Advanced Search
Keywords
Radius
Channels to Search On
None
1km
10km
50km
100km
500km
1000km
Creative Commons Only Results
Embeddable Only Results
Live Only Results


Bowling :D
Roll one:
Roll two:
Submit frame rolls
Score board
1
2
3
4
5
6
7
8
9
10
Total score
Rolls
Score


Brand Development, Graphic Design, Copywriting, Video and Broadcast Production, Website Development and Applcation Development.
Audience Insights, Formative Research, Segmentation Research, Creative and Message Testing, Media Trackers and Strategic planning
Mobile marketing, Traditional media, Social Media Community Management, Earned media and Public relation and Measurement and optimization.
We have focused exclusively on positive social change through behavior change marketing since 2001.
We serve clients from offices throughout North America and field staff in 20 states and provinces.
Our team lives and breathes health behavior change marketing, accumulating hundreds of years of combined experience.
We develop, implement, and evaluate campaigns for youth and adults, across diverse populations, urban and rural areas, and distinct health behaviors.
EVP, MANAGING DIRECTOR
President/Executive Creative Director
Chief Executive Officer


We got some issues while extracting data.
Sample Error:
Empty error log
For more info on errors by lines : Error Log File
To get all the incorrect rows please download : Incorrect Rows CSV


Privacy - Brief Summary
- The University's website has been created in full conformity with Alberta's freedom of information and protection of privacy legislation.
- Any personal information you provide through our website will be used only for the purposes for which it was collected.
- The University does not use cookies in any manner which could impinge on your privacy (i.e. it does not use “snoop” software).
For more information, see the Freedom of Information and Protection of Privacy website.
Conditions of Use — Brief Summary
- While every attempt has been made to ensure the accuracy of pages on this website, pages should be treated on an “as is” basis, rather than as official documents, unless they explicitly state “This is an official publication of Athabasca University.”
- Hyperlinks from the Athabasca University website to other sites have been provided in good faith, but do not indicate an endorsement by the University of those sites, which are subject to change over which the University has no control.
- Short extracts from the site may be reproduced for personal and non-commercial services. All other republication requires the explicit consent of the University.
- Trade marks appearing on the University website may not be copied and used without explicit permission from the University.
- Full details on conditions of use are given below.
Privacy: Details
Athabasca University's website (www.athabascau.ca) provides information about the University and its programs and services. Athabasca University respects the privacy of its online visitors and does not sell or rent any information obtained from its website to any other organization or third party.
When you visit Athabasca University's website, the server automatically collects a limited amount of information essential for the site's operation and security. This information includes your IP address, the name of your Internet Service Provider, and information concerning your browser and operating system. This information is used to perform statistical analysis of user trends and interests and to help us make this site more useful to visitors. Athabasca University does make limited use of cookies on its Web servers, but not in any manner which could impinge on your privacy. “Cookies” are small text files placed in your personal computer's hard memory that allows it to track your browser's use of the site. Cookies are used for purposes such as ensuring that procedures (such as Library procedures) work properly, or that you are not annoyed by repetitions.
When you use Athabasca University's website for program or services purposes, such as participating in online courses, requesting services, completing a questionnaire, or making payment, the personal information you provide for that program or service will be in compliance with sections 33(a) and 33(c) of the Alberta Freedom of Information and Protection of Privacy Act and will be used only for the purpose it was collected. The information will be disclosed only in accordance with the provisions of the Alberta Freedom of Information and Protection of Privacy Act and Regulation.
The Athabasca University website has links to outside Web pages. Please be aware that the University is not responsible for site content outside our Web site, or the privacy policies of outside Web sites. We encourage you to read the individual privacy statements on each website you visit.
All Athabasca University web pages should be treated on an “as is” basis unless they contain the phrase “This is an official publication of Athabasca University”. This privacy statement is intended to reflect the sites maintained by Athabasca University and it is subject to change.
For more information about our website, please contact:
Web Services, Office of Advancement
Email<EMAIL_ADDRESS>Conditions: Formal Details
The Athabasca University (“AU”) website consists of information made accessible at the athabascau.ca domain (“this Site”). This Site is subject to the terms of use below. If upon reviewing the terms of use below, you do not agree with these terms of use, you should leave this Site now.
Terms of Use
The terms of use that follow may change without prior notice and it is the user's responsibility to review for such updates.
General
The information provided on this Site is meant for educational and reference purposes only and should not be used in replacement of official documents provided by AU, unless clearly provided for. Also, the information provided on this Site is not intended to be a replacement for professional advice of any kind and the user should not act or rely on any information at this Site without first seeking the advice of a professional.
As a user of this Site, you are granted a limited licence to use (display or print) the information for your own personal, non-commercial use and you are responsible for any outcome resulting from such use. Except for short extracts, used for personal and non-commercial purposes, none of the information provided at this Site may be altered, republished or re-distributed in any way, shape or form without the explicit prior consent of AU.
Intellectual Property Rights
AU owns the intellectual property rights, including copyright, in and to this Site, or has obtained the necessary licenses. Therefore, AU will take any appropriate legal action to enforce its rights. A number of words, phrases, names, designs or logos used on this Site may be trademarks, service marks or trade names of AU or of other bodies. AU's trademarked designs or logos may not be used by other parties without prior explicit consent.
No Warranties
Although the information provided on this Site is thought to be correct when communicated, there is no obligation on AU to update this information or advise on further changes. There may be misprints or other errors on this Site, and AU does not guarantee the quality, correctness, completeness or timeliness of the information provided on this Site. AU makes no warranties, representations and conditions regarding use of this Site or the information provided, including any implied warranties or conditions of merchantability, fitness for a particular purpose, non-infringement, whether express or implied, or arising from a course of dealing, usage or trade practice. AU is not responsible for any direct, indirect, special, incidental or consequential damages or any other damages, however caused, arising out of your use of this website or from the information provided, including the loss of use, lost data, lost business profits, business interruption, personal injury, or any other personal or pecuniary loss, whether the action is in contract, tort (including negligence) or any other tort action.
Web Pages and Links
The staff and the students of AU may create and maintain pages contained on, or linked to, from this Site. The creation, maintenance and responsibility for these pages is entirely the responsibility of the parties who create and maintain such pages. AU shall have no responsibility for such pages and is not responsible for any content or information that you may find distasteful or offensive.
Also, this Site has links to other websites. This does not mean AU is associated with, or is legally allowed, to use any trademark, trade name, logo or copyrighted symbol that may be shown in the link (or in its description). These other sites were independently created and AU does not assume responsibility for the content of these other websites. By providing links to these other websites, AU does not endorse, act as a publisher or distributor of the content on those other websites.
Computer Viruses
Most material available from the AU website is in a “text-file” form which cannot contain or transmit computer viruses. Some pages, however, such as Word files, are in “binary” form, which can, like downloadable executable files, transmit viruses. Although AU makes every effort to exclude computer viruses from its materials, you should take measures to check for computer viruses, execute due caution when downloading executable files, and make certain you have a comprehensive and recent backup of the information stored on your computer.
Governing Law
The laws of the Province of Alberta and the laws of Canada applicable shall govern any dispute or action regarding this Site or any content present on the Site. You hereby consent and submit to the jurisdiction of the courts of the Province of Alberta in any action or proceeding established under or related to your use of this Site or document.
Please address comments and questions regarding this site to Rachel Conroy, Copyright Officer, Athabasca University.
Updated May 06 2014