Patents by Inventor Richard Hasha
Richard Hasha has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8510465Abstract: An art distribution system for distributing art to multiple display devices within an environment. The art distribution system provides a technique for specifying images to be displayed in an environment. The art distribution system provides a hierarchical representation of spaces within the environment. Each space may be further subdivided into subspaces. The art distribution system allows a user to select a space within the hierarchy and then to select an image that is to be displayed at the display devices within the selected space. The art distribution system then displays the selected image within the space including within all subspaces of the selected space. The art distribution system may allow a subsequent assignment of the image to a subspace to override within that subspace the previous selection of an image for the space.Type: GrantFiled: February 22, 2007Date of Patent: August 13, 2013Assignee: Microsoft CorporationInventors: David Muoio, James P. Cook, Richard Hasha
-
Patent number: 8413196Abstract: Aspects of an audio/visual architecture are disclosed. In one aspect, a system is disclosed where the system has a media manager object, an audio/visual program, and a player/recorder object so that when the program is selected, the media manager dynamically loads the player/recorder object for either playing or recording the program. For example, with respect to the media manager object, it can manage a collection of related program entities and any corresponding player/recorder components. Also, the media manager can allocate share source ports and shared sink ports in order to dynamically create virtual circuit paths for selected program entries.Type: GrantFiled: November 2, 2005Date of Patent: April 2, 2013Assignee: Microsoft CorporationInventor: Richard Hasha
-
Patent number: 7620957Abstract: A method system for tracking the state of an entity (e.g., an object) on behalf of a client (e.g., an application program). The states of an entity include up and down. The tracking system of the present invention receives a request from a client to track the state of an entity. The tracking system then watches the state of the entity to detect when the entity enters the up state. When the entity enters the up state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the up state. When the entity is in the up state, the tracking system monitors the state of the entity to detect when the entity enters the down state. When the entity enters the down state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the down state.Type: GrantFiled: September 30, 2005Date of Patent: November 17, 2009Assignee: Microsoft CorporationInventors: Richard Hasha, Stephen Springmeyer
-
Patent number: 7617453Abstract: A method and system for generating a user interface for controlling software components through a user control point device. The user interface system provides multiple software components that each can provide a user interface component. Each user interface component provides a user interface for the corresponding software component. A user control point component requests each software component to provide its user interface component. The user control point component then displays an indication of each software component. In response to the selection of a software component, the user control point component requests the user interface component for that software component to display its user interface through the control point device. When a user interacts with that user interface, the user interface component notifies the corresponding software component of the interaction.Type: GrantFiled: May 28, 1999Date of Patent: November 10, 2009Assignee: Microsoft CorporationInventors: Richard Hasha, Harry S. Pyle
-
Patent number: 7529978Abstract: A method system for tracking the state of an entity (e.g., an object) on behalf of a client (e.g., an application program). The states of an entity include up and down. The tracking system of the present invention receives a request from a client to track the state of an entity. The tracking system then watches the state of the entity to detect when the entity enters the up state. When the entity enters the up state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the up state. When the entity is in the up state, the tracking system monitors the state of the entity to detect when the entity enters the down state. When the entity enters the down state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the down state.Type: GrantFiled: September 20, 2006Date of Patent: May 5, 2009Assignee: Microsoft CorporationInventor: Richard Hasha
-
Patent number: 7383533Abstract: A method and system for implementing functions in a class that inherits an interface and that inherits an implementing class which implements the interface. A forwarding system adds to the class for each virtual function a forwarding implementation of that virtual function. The forwarding implementation forwards its invocation to the implementation of that the virtual function in the implementing class. The forwarding system implements a special forwarding instruction that specifies the interface and implementing class. A developer of a class that inherits the interface and the implementing class inserts the forwarding instruction into the class definition. When the forwarding system encounters such an instruction during compilation of the class definition, the forwarding system provides an implementation of each virtual function of the interface that forwards its invocation to a corresponding virtual function in the implementing class.Type: GrantFiled: December 28, 2004Date of Patent: June 3, 2008Assignee: Microsoft CorporationInventor: Richard Hasha
-
Patent number: 7353271Abstract: A method and system for tracking access by clients to a server object of a server class. The client tracking system provides a derived client tracking server class that includes an overriding implementation of a query function of the server class. The overriding implementation instantiates a phantom server object and returns a pointer to the instantiated phantom server object. The phantom server object has functions that correspond to and override the functions of the server class. These overriding functions perform custom processing on a client-by-client basis and forward their invocation to be corresponding functions of the server object. When a client invokes the query function of the client tracking server object, a pointer to a phantom server object is returned. From then on, when that client invokes a function of the phantom server object, custom processing can be performed for that client.Type: GrantFiled: November 26, 2003Date of Patent: April 1, 2008Assignee: Microsoft CorporationInventor: Richard Hasha
-
Publication number: 20080031246Abstract: The present invention extends to methods, systems, and computer program products for allocating and reclaiming resources within a rendezvous federation. Embodiments of the invention include formulating and routing messages in accordance with cached two-way agreements between adjacent nodes on a ring of nodes. Cached two-way agreements divide responsibility for at least unoccupied identifiers between the adjacent nodes on a ring. When a message is received at a node, the node can refer to a cached two-way agreement to determine if it or an adjacent node is responsible for the message. The node then sends the message to the next appropriate component in accordance with the cached two-way agreement.Type: ApplicationFiled: May 22, 2007Publication date: February 7, 2008Applicant: MICROSOFT CORPORATIONInventors: Richard Hasha, Lu Xun, Gopala Kakivaya, Dahlia Malkhi
-
Publication number: 20080005624Abstract: The present invention extends to methods, systems, and computer program products for appropriately detecting node failures in a rendezvous federation. A monitor node monitors a subject node. The subject node intermittently renews a time-to-live duration value with the monitor node to indicate the monitor node that the subject node has not failed. In some embodiments, each node in a pair of nodes monitors the other nodes in the pair of nodes. Thus, each node is a subject node and a monitor node. In further embodiments, an arbitration facility arbitrates failure reports.Type: ApplicationFiled: October 13, 2006Publication date: January 3, 2008Applicant: MICROSOFT CORPORATIONInventors: Gopala Kakivaya, Richard Hasha, Lu Xun, Dahlia Malkhi
-
Patent number: 7287074Abstract: A method system for tracking the state of an entity (e.g., an object) on behalf of a client (e.g., an application program). The states of an entity include up and down. The tracking system of the present invention receives a request from a client to track the state of an entity. The tracking system then watches the state of the entity to detect when the entity enters the up state. When the entity enters the up state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the up state. When the entity, is in the up state, the tracking system monitors the state of the entity to detect when the entity enters the down state. When the entity enters the down state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the down state.Type: GrantFiled: November 18, 2002Date of Patent: October 23, 2007Assignee: Microsoft CorporationInventors: Stephen Springmeyer, Richard Hasha
-
Publication number: 20070180476Abstract: An art distribution system for distributing art to multiple display devices within an environment. The art distribution system provides a technique for specifying images to be displayed in an environment. The art distribution system provides a hierarchical representation of spaces within the environment. Each space may be further subdivided into subspaces. The art distribution system allows a user to select a space within the hierarchy and then to select an image that is to be displayed at the display devices within the selected space. The art distribution system then displays the selected image within the space including within all subspaces of the selected space. The art distribution system may allow a subsequent assignment of the image to a subspace to override within that subspace the previous selection of an image for the space.Type: ApplicationFiled: February 22, 2007Publication date: August 2, 2007Inventors: David Muoio, James Cook, Richard Hasha
-
Publication number: 20070150540Abstract: Managing peer-to-peer application components. A method may be performed, for example, at a computer system that includes application components including peer-to-peer application components. The peer-to-peer application components allow the computer system to communicate with other agents, such as host computers, operating systems, frameworks, application code and the like, in a peer-to-peer fashion. The computer system includes a launch pad module for coordinating the peer-to-peer application components. The method includes providing an extensible interface that allows peer-to-peer application components to be registered with the launch pad module. Peer-to-peer application components are registered with the launch pad module. Requests are accepted from agents directed to the peer-to-peer application components registered with the launch pad module. Launch functions are performed for the peer-to-peer application components registered with the launch pad module in response to the requests.Type: ApplicationFiled: December 27, 2005Publication date: June 28, 2007Applicant: Microsoft CorporationInventors: Christopher Kaler, Gopala Kakivaya, Hervey Wilson, Richard Hasha
-
Publication number: 20070143770Abstract: The present invention extends to methods, systems, and computer program products for mapping between anonymous modules in an event environment. Through the use of one or more event type to executable module bindings, a binding/dispatch manager maps events, for example, peer-to-peer, grid, or parallel processing computing events, to appropriate methods for processing the events. When an event is received from an event infrastructure, the binding/dispatch manager refers to annotations (e.g., based on the shape of the parameters) to identify an appropriate method for processing the event. Parameters are transferred to the appropriate method, which processes the parameters and returns any results to the binding/dispatch manager. In some embodiments, the binding/dispatch manager then forwards a response to the event infrastructure.Type: ApplicationFiled: December 15, 2005Publication date: June 21, 2007Applicant: Microsoft CorporationInventors: Christopher Kaler, Richard Hasha
-
Publication number: 20070133520Abstract: Communicating a message using between networked agents. Some embodiments may be practiced, for example, in a network including one or more interconnected agents. A method facilities communicating a message to one or more of the interconnected agents. The method includes receiving feedback including information about the network. The information about the network is tracked. The method further includes consulting a set of policy rules. The policy rules include logic which takes into account the tracked information about the network. The policy rules further include information about how messages should be sent based on the logic which takes into account the tracked information about the network. The method also includes sending the message according to the information about how messages should be sent.Type: ApplicationFiled: December 12, 2005Publication date: June 14, 2007Applicant: Microsoft CorporationInventors: Gopala Kakivaya, Richard Hasha, Christopher Kaler
-
Patent number: 7196678Abstract: An art distribution system for distributing art to multiple display devices within an environment. The art distribution system provides a technique for specifying images to be displayed in an environment. The art distribution system provides a hierarchical representation of spaces within the environment. Each space may be further subdivided into subspaces. The art distribution system allows a user to select a space within the hierarchy and then to select an image that is to be displayed at the display devices within the selected space. The art distribution system then displays the selected image within the space including within all subspaces of the selected space. The art distribution system may allow a subsequent assignment of the image to a subspace to override within that subspace the previous selection of an image for the space.Type: GrantFiled: October 22, 2003Date of Patent: March 27, 2007Assignee: Microsoft CorporationInventors: David J. Muoio, James Cook, Richard Hasha
-
Publication number: 20070016830Abstract: A method system for tracking the state of an entity (e.g., an object) on behalf of a client (e.g., an application program). The states of an entity include up and down. The tracking system of the present invention receives a request from a client to track the state of an entity. The tracking system then watches the state of the entity to detect when the entity enters the up state. When the entity enters the up state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the up state. When the entity is in the up state, the tracking system monitors the state of the entity to detect when the entity enters the down state. When the entity enters the down state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the down state.Type: ApplicationFiled: September 20, 2006Publication date: January 18, 2007Applicant: Microsoft CorporationInventor: Richard Hasha
-
Publication number: 20070002774Abstract: The present invention extends to methods, systems, and computer program products for broadcasting communication within a rendezvous federation. Embodiments of the invention include inter-ring and intra-ring communication. Inter-ring communication includes sending a message to destination rings included in a node's Collateral Ring Set entry table. When a node identifies a destination ring that has not yet received a message, the node can send a ring notification message. The ring notification message propagates towards a publishing node until a responsible node in the message path to the publishing node is identified. The responsible node updates its entry table to include the ring and forwards the message to the destination ring. Intra-ring communication can include recursively partitioning ranges of nodes within a ring and forwarding the message to nodes included the partitioned ranges.Type: ApplicationFiled: August 17, 2006Publication date: January 4, 2007Applicant: Microsoft CorporationInventors: Richard Hasha, Lu Xun, Gopala Kakivaya
-
Patent number: 7159147Abstract: A method system for tracking the state of an entity (e.g., an object) on behalf of a client (e.g., an application program). The states of an entity include up and down. The tracking system of the present invention receives a request from a client to track the state of an entity. The tracking system then watches the state of the entity to detect when the entity enters the up state. When the entity enters the up state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the up state. When the entity is in the up state, the tracking system monitors the state of the entity to detect when the entity enters the down state. When the entity enters the down state, the tracking system performs a behavior that is specified by the client to be performed when the entity enters the down state.Type: GrantFiled: October 8, 2003Date of Patent: January 2, 2007Assignee: Microsoft CorporationInventor: Richard Hasha
-
Publication number: 20060282547Abstract: The present invention extends to methods, systems, and computer program products for facilitating inter-proximity communication within a rendezvous federation. Nodes maintain collateral ring set entry tables that include collateral rings and corresponding entry nodes into the collateral rings. Nodes can exchange collateral ring set entry state to update one another on the configuration of rings within a tree of rings. Nodes can refer to collateral ring set entry tables, as well as to other nodes, to identify entry nodes into rings that are collateral rings of the node. Messages can be sent to entry nodes in collateral rings. A message can include an indication that an entry node in a target proximity ring is to resolve the message to the node in the target proximity ring which has a node ID closest to an indicated destination node.Type: ApplicationFiled: June 30, 2006Publication date: December 14, 2006Inventors: Richard Hasha, Lu Xun, Gopala Kakivaya
-
Publication number: 20060282505Abstract: The present invention extends to methods, systems, and computer program products for facilitating inter-proximity communication within a rendezvous federation. Nodes maintain collateral ring set entry tables that include collateral rings and corresponding entry nodes into the collateral rings. Nodes can exchange collateral ring set entry state to update one another on the configuration of rings within a tree of rings. Nodes can refer to collateral ring set entry tables, as well as to other nodes, to identify entry nodes into rings that are collateral rings of the node. Messages can be sent to entry nodes in collateral rings. A message can include an indication that an entry node in a target proximity ring is to resolve the message to the node in the target proximity ring which has a node ID closest to an indicated destination node.Type: ApplicationFiled: June 30, 2006Publication date: December 14, 2006Inventors: Richard Hasha, Lu Xun, Gopala Kakivaya