8
When using overlay_nearest function in the QGIS expression builder, sometimes a feature considers itself as the nearest geometry, and other times not.
To demonstrate, I made a label expression:
CASE
 WHEN
 letter='A'
 THEN
 'fid: ' || "fid" ||
 '\nletter: ' || "letter" ||
 '\n\nnearest fid\'s: ' || array_to_string(
 overlay_nearest(layer:=@layer,
 expression:=fid,
 filter:=letter='A',
 limit:=2
 )
 )
 ELSE
 NULL
END
I set the feature limit at 2 to show the 2 nearest fids for each feature to show that the true nearest feature is being found second.
The points outlined in red consider themselves their nearest neighbour, the others do not. It happens also with a projected coordinate system, and with various permutations of the WHEN clause.
Can anyone explain why this is?
enter image description here
Example dataset (CRS is WGS84) -- GeoPackage download link (with label expression pre-loaded)
WKT fid letter
POINT (27.7981358844261 -24.2696491141906) 1 A
POINT (27.7988424066944 -24.2678611535372) 2 A
POINT (27.7989643301811 -24.2688320385901) 3 B
POINT (27.8007927306901 -24.2685965478542) 4 B
POINT (27.7979157991226 -24.2678537822582) 5 B
POINT (27.7995823651664 -24.2670624651733) 6 A
POINT (27.7999025692956 -24.2692146208195) 7 B
POINT (27.8002376476489 -24.2696982965109) 9 A
POINT (27.7984109576877 -24.2694592018388) 10 A
POINT (27.8001260102486 -24.2667596896059) 11 B
2
 - 3
 the overlay_nearest function and others, respond badly if used with the same layer, here bug: github.com/qgis/QGIS/issues/47201
 – pigreco
 Feb 17, 2022 at 14:46
 - 1
 Ah, thank you. I thought it was caused by the way I was filtering. If you want to make an answer, I can accept it. I was thinking a workaround could be to check the fid and if it matches, take the second array element instead of the first. Seems horribly hacky though.
 – Matt
 Feb 17, 2022 at 14:52
2 Answers 2
6
The overlay_nearest function and others, respond badly if used with the same layer.
Here is a bug report: _URL_
1
 - Would it help to duplicate the layer and use the duplicated layer (in fact, the same data) for overlay_nearest or does that not improve performance?
 – Babel
 May 23, 2023 at 19:22
2
So far I noticed that the overlay_nearest will result in an array, where the same feature will always be at the 0-index position.
Therefore, like in this thread Drawing 10 nearest lines from each point connecting to the centroid of the 5 points nearest to each point with QGIS expression, I am simply suggesting to delete it by its index i.e. 0.
However, in such a case, the number in limit should be incremented in one more feature.
array_remove_at(
 overlay_nearest(
 layer:=@layer,
 expression:=fid,
 filter:=letter='A',
 limit:=3 -- notice this change
 )
 0)
2
 - The problem was, at the time of posting the question, that the nearest feature was only sometimes itself, and sometimes not. I haven't tried to reproduce the problem recently, but if you're getting consistent results then perhaps there has been a bug fix.
 – Matt
 Dec 20, 2023 at 19:32
 - I got you. Currently, my results are consistent. Perhaps, there was some bug or issue with data etc., it needs investigation
 – Taras
 Dec 20, 2023 at 20:19
Your Answer
By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.
Not the answer you're looking for? Browse other questions tagged or ask your own question.


text:
Statements are used when you allow a customer to accumulate charges before requesting payment, or if
you assess a regular monthly charge. When you're ready, such as at the end of the month or when you've
accumulated charges, you can print a billing statement to send to your customers.
For example, you can use a billing statement to:
bill your customers on a regular basis, such as monthly.
send a customer a reminder of past-due charges.
charge your customers for a regular service.
How can I use billing statements?

source: openbmb/Ultra-FineWeb


text:
It's a widely held misconception that horses aren't affected by sleep deprivation. Most require at least four hours of slumber, including about 60 minutes of rapid eye movement (REM) sleep, during a 24-hour period. If a horse misses out on sleep for several days, he can become so exhausted that he literally falls asleep on his feet, collapsing.
Sleep deprivation is often confused with narcolepsy, a rare neurological disorder that produces excessive sleepiness, but it is usually much easier to remedy. Take the following steps to ensure your horse gets sufficient sleep each day:
Turn off the lights. Horses who are used to falling asleep outside in the darkness may have trouble snoozing if they're moved to brightly lit stalls. They can eventually adapt to brighter conditions---broodmares kept under artificial light for extended periods of time show few adverse effects---but they will be sleepy until they do.
Provide ample bedding. REM sleep can be achieved only when the horse is lying flat out or in sternal recumbency with his nose resting on the ground. You can encourage your horse to get off his feet by making the floor more comfortable. In one study, horses were more likely to lie down in a stall deeply bedded with shavings.
Keep it quiet. Horses are light snoozers, so at night try to keep the barn quiet or provide "white noise," such as easy-listening music turned down low.
Stable horses in congenial groups. Horses tend to sleep better when surrounded by other horses, but only if they all get along. Make sure your horse is friendly with herdmates in adjoining stalls. If two horses bicker all night, they may keep the whole barn awake.


text:
In contemporary history, physical education in the Philippines developed into the Bureau of Physical Education and School Sports. The nation's Executive Order No. 81 series of 1999 then integrated BPESS into the Philippine Sports Commission, which has since assumed BPESS's departmental roles.Continue Reading
Before the foundation of either BPESS or PSC, the development of physical education in the Philippines was conducted by one of three staff bureaus within its Department of Education, Culture, and Sports. Referred to as DECS, the department began as the Ministry of Education, Culture, and Sports under the country's Education Act of 1982. Sports organizations in the early 20th century were cultivated alongside educational programs that were simultaneously sponsored by the government, including the Philippine Amateur Athletic Federation and the Department of Public Instruction.
Passed in 1990, the Republic Act 6847 came to be known the Philippine Sports Commission Act upon its creation as a primary governmental sporting institution, and it continues to function with the Department of Education through collaborating in nationally accredited physical education programs. The Department of Education and the Philippine Sports Commission additionally cooperate in hosting annual sporting events such as the Paralong Pambansa, in which student athletes participate from around the nation.Learn more about Modern Asia


Relationship between bone mechanical properties and collagen denaturation
X. Wang, R. A. Bank, J. M. Tekoppele, K. A. Athanasiou, C. M. Agrawal
Research output: Contribution to conferencePaperpeer-review
3 Scopus citations
Abstract
The percentage of denatured type 1 collagen in baboon bone using a new biochemical method was studied and correlated with the biochemical and physical properties of bone. The results indicate that changes in the failure energy and fracture toughness of bone most likely stem from age-dependent changes in mineral and collagen phases of bone. Structural changes in collagen molecules are significantly correlated with the elastic modulus and failure energy or toughness of bone. Meanwhile, bone mineral content has a significant correlation with the elastic modulus, yield strength and ultimate strength of bone.
Original languageEnglish (US)
Number of pages1
StatePublished - 1998
EventProceedings of the 1998 17th Southern Biomedical Engineering Conference - San Antonio, TX, USA
Duration: Feb 6 1998Feb 8 1998
Other
OtherProceedings of the 1998 17th Southern Biomedical Engineering Conference
CitySan Antonio, TX, USA
Period2/6/982/8/98
ASJC Scopus subject areas
 - Engineering(all)
Fingerprint
Dive into the research topics of 'Relationship between bone mechanical properties and collagen denaturation'. Together they form a unique fingerprint.
Cite this


text:
BC Hydro and Chevrolet charge into clean mobility future
By Anthony Capkun
Vehicle fleets in British Columbia are going green thanks to a new partnership between BC Hydro and Chevrolet Canada. BC Hydro will work with the car maker to help place 15 Chevrolet Volts into the fleets of British Columbia-based organizations late next summer, with at least two of those vehicles being added to BC Hydro's own fleet.
The partnership is aimed at promoting consumer adoption of plug-in electric vehicles and building awareness of the environmental benefits of the cars.
"Electric vehicles will play an important role in B.C.'s clean energy future. When powered by B.C.'s hydroelectricity, electric vehicles can greatly reduce greenhouse gas emissions from transportation," said energy minister Steve Thomson. "British Columbia is playing a lead role in creating a culture of acceptance for environmentally friendly transportation solutions, and we are pleased to be able to work with automotive industry leaders, like Chevrolet, to accelerate the arrival of plug-in vehicles to our province."
With extended-range capability, the Volt has a total driving range of about 580 kilometres. For the first 40 to 80 kilometres, the vehicle drives gas-free and produces no tailpipe emissions, using electricity stored in the battery. When the battery runs low, an engine-generator engages to provide electricity, extending the Volt's driving range by about 500 kilometres.
"We are pleased to work with BC Hydro as a leading partner to prepare to launch the Chevrolet Volt, an award-winning product that delivers an electric vehicle solution without compromise," said Kevin Williams, president and managing director of GM of Canada. "Unlike any other electric vehicle, the Chevrolet Volt eliminates range-anxiety with its extended range capability, and gives customers the freedom to drive green without the fear of being stranded with a depleted battery."
"There is significant interest in electric vehicles in B.C., and as the primary fuel supplier for these cars of the future, BC Hydro has been involved in numerous initiatives to learn more about how electric vehicles will interact with our electrical system," said Bev Van Ruyven, deputy CEO and executive vice-president, BC Hydro. "As we work towards key clean energy goals, we will continue to advance sustainability and conservation and encourage British Columbians to use energy and all other resources wisely."
To prepare for the arrival of electric vehicles, BC Hydro has taken the lead in the development of codes and standards, worked with Natural Resources Canada to develop guidelines for charging infrastructure guidelines and participated in a North America-wide R&D collaboration regarding plug-in vehicles with General Motors, the Electric Power Research Institute and 34 North American utilities to facilitate integration of plug-in hybrid vehicles into the grid.
CLICK HERE for BC Hydro.
CLICK HERE for Chevrolet Volt.

source: m-a-p/FineFineWeb


text:
Recently, on February 8 – 11 dr. Aleksandra Zgrundo and third – year oceanography bachelor students: Karolina Czmajduch and Hanna Gawrysiak from the University of Gdańsk took part in a study visit to the Klaipeda University, organized by dr. Nerijus Nika, Head of Fisheries and Aquaculture Laboratory of Marine Research Institute at Klaipeda University, with the aim to present new techniques and methods used white shrimp Pannaeus vannamei and fish aquaculture in recirculating aquaculture systems (RAS) in Klaipeda, exchange experiences based on AquaVIP shrimp breeding experiments at both universities and establish further cooperation in the field of multitrophic aquaculture.
The study trip included visits to Klaipeda University as well as Klaipeda Science and Technology Park. Participants were acquainted with the recirculating aquaculture system (RAS) designed for shrimp farming at KSTP and Klaipeda University Marine Research Institute Fisheries and Aquaculture Laboratory, located at the beautiful Curonian Spit, with laboratory's RAS systems, where development of fresh and brackish water aquaculture takes place, as well laboratories that allow for carrying out a variety of morphological and anatomical analyzes, and a modern mesocosm allowing for the simulation of environmental conditions, and a wave channel allowing for simple experiments in liquids hydrodynamics.
During the visit participants took part in some of the experiments carried out by the Klapieda University research team within AquaVIP project: shrimps feeding procedures, completion of the "shrimp tower" experiment – an innovative breeding optimization system, taking measurements (length, weight), sampling hemolymph from stressed and non-stressed specimens, and making behavioral observations.
As part of the study visit a meeting at the Research Institute at the Klaipeda University was organized with the director and researchers interested in cooperation in the field of micro- and macroalgae aquaculture. At the meeting, previous experience in the field of aquaculture and plant breeding as well as educational offer in aquaculture was discussed, and the visiting students had the opportunity to present the results of their bachelors' projects.
The study visit to the Klaipeda University gave the Polish team a unique opportunity to have an insight into practical aspects of working with large-scale experimental shrimp and fish farms, information on advantages and disadvantages of the systems at the Klaipeda facility to be considered at further experiments, to share professional knowledge and experience, and find aquaculture themes for further cooperation. Additionally visiting students gained information related to shrimp behavior and cannibalism related to the their bachelor projects and developed soft skills related to communication, mutual learning and research results presentation, crucial for their further professional development.
Source: Participants report


text:
1) full hydrogen tech-nique
2) hydrogenation process
Improving the hydrogenation process to extend the service life of catalyst;
The requirement to effectively process these crudes has accelerated the de- velopment of world hydrogenation processes,and hydrocracking and hydrotreating capacities have been growing at a greater pace.
The problems of China s base oil processes under the high prices of crude oil are pointed out as follows:①for the traditional base oil process,the problem is that the great diversity of refining crude oil leads to decline in the quality of base oil and corrosion towards facilities;②and for the base oil hydrogenation process,the problem is mainly the operation under capacity.
3) hydrogen making process
4) dehydrogenation process
Reasonable application of dehydrogenation process during plate production;
5) Hydrogen relieving technique
6) HD process
The effect of various H-desorption pressures in HD process on sintered NdFeB permanent magnets is studied.
It shows that to choose an optimal H-desorption grade in HD process is important .
gas production technology


How Do Blink Cameras Work?
With the rising concerns of your home security, getting a durable camera that monitors your home is an option you might consider. Blink cameras are one of the most ideal cameras that have earned public attention and garnered a spot among big brands.
Because Blink cameras offer suitable features without breaking the bank, they have grown popular, making them desirable cameras in the market. So, how does a blink camera work? If you are looking for how blink cameras work, how to set the cameras up, and more, this post has covered that. Take a look!
Blink Cameras are for their simple installation and working. Once you have a blink camera, you can configure it yourself, and it can start working without looking for a professional. Here is a detailed explanation of how the blink camera works.
image 111
 1. Wireless Operation
Blink cameras communicate wirelessly with the sync module. Wireless operation is possible because the camera uses radio waves to link with the sync module. Thus, the cameras can be installed anywhere, according to your liking.
 1. Links with a Sync Module
Blink Cameras works with a Sync Module connected to your fast internet. A Sync module enables you to create a whole system, which can manage all cameras and how they communicate and facilitate the storage of recorded videos.
Unlike a Blink camera that is not connected to power, the Sync module must be plugged into a power source to enable its functioning, like connecting to the internet. The Sync module must be strategically placed within range to facilitate communication with the Blink cameras.
 1. Motion Sensor
Blink Cameras start recording videos when motion is detected. The cameras are equipped with motion sensors, which work within a given field of view. If an activity is detected with the field of view, the camera will be triggered and start to record. The feature is suitable because it enables the conservation of your battery, such that the camera stops recording when no motion is detected.
 1. Records a Video
A blink Camera records a video when motion is detected, depending on your settings. If you have set the time to 30 seconds, the camera will record videos of 30 seconds and send them to the storage, from where you can access them remotely.
 1. Access to Video Via Blink App
When buying a Blink camera, you must download the Blink App on your mobile device to get the camera to work. The Blink App makes access to the recorded videos easy, as you can access them using the app. The Blink App lets you watch your home from anywhere without hassle.
 1. Battery-Powered Cameras.
Blink Cameras are powered by lithium batteries that come with the camera when purchasing. Thus, the camera will start functioning without wiring connections because its power is from the batteries. Blink assures users that the battery can last up to two years, but its lifespan can vary depending on many factors.
 1. Local or Cloud Storage
Configuring the Blink Cameras gives you a one-month free unlimited cloud storage trial period. All your videos are stored on the cloud and can be accessed from the Blink App. Alternatively, you can choose a local storage using a USB drive inserted in the Sync Module. The USB is bought differently and does not come with the Blink Cameras.
 1. 24/7 Monitoring
Blink Cameras always work, even at night, enabling you to monitor your home. The cameras have excellent night vision, ensuring clear videos are recorded even at night.
You can set up any Blink camera from the Blink app without looking for a professional. Here is a step-by-step guide you can follow.
 1. Install the Blink app on your Android or iPhone.
image 112
 1. Create an Account in the Blink App.
Click on the Create Account option, and follow the instructions on your screen to create an account. Provide basic information, such as your email, phone number, and password.
image 113
 1. Choose if you want to link Blink to Amazon.
You will tap on the linking option if you want a Blink monthly subscription, especially for storage. Otherwise, you may skip the step.
image 114
 1. Select the Sync Module option, and tap OK on the prompt on your screen.
Once you select the Sync module, you will be prompted if you want the camera to scan a QR code. Clicking OK allows your mobile camera to scan a QR code.
image 115
 1. Click on While using the app to take a video or picture with the Blink app.
image 116
 1. Take the Sync module and Scan the QR Code to Create a System.
Once you scan the QR code and the app recognizes it, it will prompt you to click a system. Click on Create a System, and give it a name you like.
image 117
 1. Make the Sync Module Discoverable.
Take the Sync module, plug it in, and click the Reset button on the back until a red light appears. Give it a few more seconds until you see a blue and then a green steady light.
image 118
 1. Tap on Discover Device
Go back to the Blink app and tap on Discover Device. While performing this step, you must ensure you are connected to a stable internet. Click on Connect, choose your Wi-Fi, enter the password, and get connected.
image 119
 1. Click the Plus Icon in the top right corner to add the first camera. Click on the type of camera you add, like a wireless, mini, or the type you bought.
image 120
 1. Scan the QR Code on the back of the camera Using the Blink App.
To scan the QR code, you must remove a black rubber piece on the back of the camera, as shown in the picture below.
image 121
Next, take one of the plastic screws, and twist the screw on the camera to open the camera. Now, you can scan the QR code on the back of the camera.
image 122
 1. Select the system you created earlier to add your camera to it.
The system you created earlier will be listed, and you can select it. Moreover, you can insert the battery into the camera while waiting for it to be connected to the system.
image 123
The app will let you know when the camera has been added successfully, and you will be enrolled automatically by Blink to the 30-day free Blink cloud trial period, offering you unlimited storage for your footage.
When the trial ends, you can subscribe or cancel the subscription. Moreover, you can use the sync module storage by storing the videos locally on a USB drive plugged into the sync module.
Mounting the camera on the wall is also easy because it comes with a mount and screw to enable you to achieve your goal. You can insert the mount to the camera, choose a suitable location, and use the provided screw to mount it.
Blink Cameras are durable and affordable Cameras founded by Immedia Semiconductor in 2014. Blink, a consumer electronics company, started manufacturing home security cameras in 2014 before Amazon acquired it in December 2017.
The Blink company had a background in chip manufacturing, and it gave the company an upper hand in developing small, affordable, and power-saving cameras that stood out in the congested security camera market. Moreover, the blink cameras offer more features than other cameras that consume much power, making the product ideal for many customers.
As explained below, four types of Blink Cameras have done well in the market.
Blink Indoor Camera is one of the best indoor cameras to monitor your space. From checking on your pets to checking on your baby, the indoor camera can help you achieve various indoor purposes. The camera is wireless, and it is more attractive because it can be installed anywhere.
The Blink indoor camera is wireless, measuring a few inches, meaning it only requires a small space on your furniture to work. But, the wireless camera works with a sync module that must be plugged into a hub. The Blink indoor camera works in hand with the sync module, which means you will incur $10 on top to get the module.
Once you have the indoor camera, you can install the wireless camera about anywhere and plug the sync module into a power hub. The sync module and wireless camera can communicate with radio waves, enabling you to monitor your home from your mobile device.
Blink Indoor Camera Features
 1. Battery powered camera
 2. Quality video resolution of up to 1080p.
 3. Night recording capabilities.
 4. View Area of 110-degree.
 5. Wireless communication of the camera
 6. Two Way Audio
Blink outdoor camera is one of the best cameras highly reviewed by customers in 2023. The camera can be used outdoors or indoors, and it is a powerful weather-resistant camera that works wirelessly.
Like the indoor blink camera, the outdoor camera works with a sync module that must be plugged into a hub. The camera records clips of 5 to 60 seconds once triggered by motion and takes around 10 seconds to relapse.
The Blink outdoor camera shares most of its features with the indoor camera, but it costs $99 to buy a single camera and $89 for additional cameras. Two batteries power the outdoor camera, and you can install it yourself, following a user guide.
Once the outdoor camera captures a video, it can be stored locally on the sync module with the help of a USB drive that you can buy separately or choose to subscribe to cloud storage, where the videos will be stored.
Features of Blink Outdoor Camera
 1. Budget-friendly compared to other brands.
 2. Weather resistant.
 3. It has an inbuilt temperature sensor.
 4. Privacy settings can be modified.
 5. It offers easy installation without needing a professional.
Drawbacks of Blink Outdoor Camera
 1. Lack of Advanced Imaging Features
The Blink outdoor camera is not recommended for high-quality videos. The camera lacks advanced imaging features like HDR and color night vision for better video quality.
 1. Offers Narrow View
Compared to other cameras, the camera is unsuitable for covering large areas because of its narrow field of view.


Quick Answer: Can You Leave A Cat Alone For 6 Days?
Does my cat Miss Me When away?
Research has shown that cats don't show signs of separation anxiety when their owner is away.
Some cat owners know this: you return from a holiday but your cat acts pretty indifferently.
Other cats even behave like they are "offended" and pretend not to see you at all..
Do cats miss their owners?
Do cats like music or silence?
Do cats recognize faces?
Is it cruel to leave a cat alone all day?
Your cat should not be left alone for long periods of time. It's important to note that kittens and adult cats are different. Kittens need more regular care and contact, especially in the beginning and when they're adjusting to their new home. Adult cats are much more self-sufficient during the day.
Do cats forget you after one week?
Your cat will remember you after 2 weeks or even after 1 year. They use scent to recognize you, not exactly their memory. If we are close to our feline pets, it can be worrisome to think they'll forget us if we are away for a few months, or even years.
Will cats hold their poop?
There is no definite way to say how long cats can hold their poop since many factors are at play. Richard Goldstein of the Cornell University of Veterinary Medicine states, "Cats typically move their bowels one to three times a day… depending to some extent on the type of food they eat.
Do cats prefer quiet?
Cats prefer quiet because it enables them to relax/sleep. Prolonged exposure to noise above 95 decibels can cause hearing damage. A short, sharp noise of 120 decibels can put your cat at risk hearing damage. Exposure to constant noise must be controlled.
Do cats like music left on?
If you choose to leave on your music player or TV while you're out of the house, stick with calming music. Cats of all ages will appreciate soothing sounds, whether classical music, nature sounds or music created specifically for them.
How long does a cat remember a person?
16 hoursCats average 16 hours of short-term memory. If you meet a cat for the first time and have only one interaction, the cat will remember you 16 hours later. There is no indicated time regarding their long-term memory, meaning they are capable of remembering people they are familiar with for years.
How long is it OK to leave a cat alone?
24 hoursIn general, vets say it's okay to leave your cat alone for up to 24 hours at a time. As long as they have a clean litterbox, access to fresh water, and a full meal before you go, they should be fine for a day. Any longer than that, though, is pushing it.
Should I leave the TV on for my cat?
Do cats get sad when you leave?
Regardless of their reputation, cats do get lonely when they are left unattended for long periods of time. They are social beings that form strong bonds with their owners. When their needs for companionship are not met, cats can become depressed. They can also get separation anxiety.
How long does it take a cat to forget you?
Is it OK to leave a cat alone for 5 days?
As we know, most adult cats will be fine if left alone whilst you're at work, as long as you take the proper precautions. But, if you can work from home a few days a week, this can be a great way to keep your cat company and avoid leaving them alone too much.


Skip to main content
Association of the SOFA score and mortality in elderly patients with severe sepsis and septic shock
Introduction
The SOFA score is an excellent predictive marker of outcome in sepsis; however, there are very few studies that relate it to mortality in elderly patients with sepsis and septic shock.
Objective
To assess the association of the SOFA score and other factors related to mortality in elderly patients with severe sepsis and septic shock.
Methods
A 3-month prospective cohort study of 30 patients aged ≥ 65 showing severe sepsis or septic shock (Consensus Conference of 1991). Arterial hypotension (systolic arterial pressure < 90 mmHg) corresponded to the 'time-zero' of the study. The variables used were: SOFA score on days 1, 3, 5, 7, 14, and 28, ΔSOFA (variation of the SOFA score on days 1 and 3), APACHE II, Troponin I dosage, BNP and RCP, plasma glucose levels, organ failures [1], the presence of previous cardiovascular disease, assessment of dependence and cognitive deficit [2, 3], length of ICU stay, and need for mechanical ventilation. We used Student's t test and the Fischer Exact test for a statistical analysis. We considered the significance level of 5%.
Results
The mean age of patients, of whom 60% were females, was 82 ± 9 years (minimum = 65, maximum = 99). The predominant diagnosis was septic shock in 67% of the cases, while 33% of the patients developed severe sepsis. On days 1, 3, 5, 7, 14, and 28, the SOFA score presented mean values of 7, 6, 4, 3, 2, and 2, respectively (minimum = 2 and maximum = 15), thus evidencing a significant relationship between the SOFA score on day 1 (P = 0.0001) and day 3 (P = 0.001), including Δ SOFA score (P = 0.043), and mortality. The number of failures was also associated with mortality when two or more organic failures (P = 0.001) were present. Age, gender, APACHE II, length of ICU stay, dependence level, presence of cognitive deficit and/or previous cardiovascular diseases, plasma glucose levels, troponin I, BNP and RCP were not associated with the mortality.
Conclusion
Mean SOFA average above 5 as well as SOFA variation within the first 72 hours proved to be good predictive markers in elderly patients with septic shock and severe sepsis. The same occurred in the presence of two or more organic failures during the course of sepsis.
References
 1. 1.
 Le Gall JR, Brun-Buisson C, Trunet P, Laturnerie J, Chantereau S, Rapin M: Influence of age, previous health status, and severity of acute illness on outcome from intensive care. Crit Care Med 1982, 10: 575-577.
 PubMed CAS Article Google Scholar
 2. 2.
 Katz S, Ford AB, Moskowitz RW: Studies of illness in the aged: the index of ADL; a standardized measure of biological and psychosocial function. JAMA 1963, 185: 914-919.
 PubMed CAS Article Google Scholar
 3. 3.
 Lawton MP, Brody EM: Assessment of older people: self-maintaining and instrumental activities of daily living. Gerontologist 1969, 9: 179-186.
 PubMed CAS Article Google Scholar
Download references
Author information
Affiliations
Authors
Rights and permissions
Reprints and Permissions
About this article
Cite this article
Machado, R., David, C., Oliveira, G. et al. Association of the SOFA score and mortality in elderly patients with severe sepsis and septic shock. Crit Care 9, P232 (2005). _URL_
Download citation
Keywords
 - Elderly Patient
 - Septic Shock
 - Severe Sepsis
 - Organic Failure
 - Prospective Cohort Study


text:
September 27, 2016 - 12:20 AMT
PanARMENIAN.Net - The World Bank and the Global Facility for Disaster Reduction and Recovery (GFDRR), with support from the Japanese Government and other donors, invited government representatives from Armenia, Kyrgyz Republic and Tajikistan in early September to take part in an Experts Visit to Japan, the World Bank said in a statement Monday, September 26.
While disaster profiles and vulnerabilities vary across Armenia, the Kyrgyz Republic and Tajikistan, all three countries, however, share in common a predominant seismic risk.
The visit provided an opportunity for participants to improve their respective crisis management systems by learning first-hand about Japan's experience in disaster preparedness and response systems at national and local levels. Japan, a country that has accumulated much knowledge and operational experience in disaster risk management (DRM) through its own experience with recurring natural disasters, has actively promoted cooperation at a global level to reduce the number of disaster-related victims.
Over the course of a week, Armenian, Kyrgyz, and Tajik officials engaged in discussions with a wide range of national agencies and municipal authorities in Japan.
Acknowledging the proactive approaches to DRM, the World Bank and GFDRR will continue supporting Armenia, Kyrgyz Republic, and Tajikistan as they shift away from a reactive disaster response system to a more integrated disaster risk management and resilience-building approach.
"Combining both conceptual and practical knowledge on disaster preparedness in the Japanese schools was something that impressed us as it showed that schools are not just an educational facility," Head of Crisis Management Center of Rescue Service at Armenia's Ministry of Emergency Situations Hovhannes Khangeldyan said.
"Instead, they are an essential part of a wider disaster management system. We saw how schools in Japan play a proactive role in raising awareness on disaster risks. Schools can also accelerate recovery efforts by becoming safe evacuation facilities if needed."
The World Bank has earlier laucnhed The National Disaster Risk Management Program is aimed at supporting Armenia to further advance disaster resilience by 1 improving disaster risk information, enhancing disaster risk reduction, strengthening disaster preparedness and improving understanding of fiscal disaster risks and risk financing options.
Armenia has historically been prone to earthquakes. The last devastating earthquake in 1988 rocked Spitak, killing 25,000 people and injuring 19,000, severely damaging 517,000 homes and causing an estimated economic loss of$ 15-20 billion in northern parts of the country.
Floods in the country also pose serious danger. For instance, flooding in 2010 caused an estimated $10million in damage.


Configuring PostgreSQL CDC Replication Slots and Publications
 - 5 Minutes to read
 - Dark
 Light
 - PDF
Configuring PostgreSQL CDC Replication Slots and Publications
 - Dark
 Light
 - PDF
Article Summary
Introduction
Replication is a key feature in database management systems that allows the synchronization of data between multiple database instances. It is commonly used for various purposes, such as high availability, disaster recovery, and data distribution. In some replication setups, publication slots are used to control the flow of changes between the master and replica databases.
This document guides you through the process of configuring replication slots and publications.
Please Note:
 - Replication slot and publication names in PostgreSQL are case-sensitive.
 - Having superuser privileges is crucial for obtaining data from a Replication slot. In the case of Amazon RDS, this means having superuser access, while on the Google Cloud Platform, you would need the cloudsqlsuperuser role to acquire the required REPLICATION permission.
 - In order to create a Publication, it is necessary to have superuser (or cloudsqlsuperuser) privileges, which will grant you the required CREATE permission.
Replication Slots Configuration
Activating replication slots allows for efficient and reliable data replication in PostgreSQL. By authorizing the Rivery user with the REPLICATION role, you enable the necessary permissions for managing replication slots.
These slots play a crucial role in the replication process by reserving space on the server to store replicated data before it is consumed. Proper configuration of replication slots is crucial for maintaining this setup.
To configure replication slots, the Rivery user must be granted the REPLICATION role. If the server does not already have a REPLICATION role, it can be created using the provided SQL commands in your PostgreSQL:
CREATE ROLE <replication_role_name> REPLICATION LOGIN;
Please ensure to replace <replication_role_name> with a role name of your preference.
Once the role has been created, execute the following SQL command to create a new login for Rivery's Log-Based extraction if it doesn't already exist:
CREATE USER rivery WITH <replication_role_name>;
In case the Rivery user already exists, use the following SQL command to assign the new role to the user:
ALTER USER rivery WITH <replication_role_name>;
Configure Replica Identity to Each Non-Keyed or Unique Table
To ensure that the previous values of a table are retrieved from the Write-Ahead Log (WAL) in Postgresql during DELETE events, it is necessary to configure the replication identity of the tables. Postgres offers 4 different types of REPLICA IDENTITY that dictate how events are written to the logical replication stream:
 - DEFAULT: This setting includes the previous values of a table's primary key columns only in UPDATE and DELETE events. In the case of UPDATE, it includes only the primary columns with changed values.
 - NOTHING: With this setting, the UPDATE and DELETE events do not contain any information about the previous values of any table column.
 - FULL: The previous values of all columns in the table are stored in the UPDATE and DELETE events when this setting is used.
 - INDEX: UPDATE and DELETE events include the previous values of the columns defined in the index named "index name". However, in the case of UPDATE, only the indexed columns with changed values are included.
For additional details regarding DELETE events, please refer to our Databases overview page.
Choose the appropriate replica identity option based on your requirements. For non-keyed or unique tables, the FULL option is often used to ensure accurate replication:
ALTER TABLE <schema>.<table> REPLICA IDENTITY FULL;
Replace <schema> and <table> with the actual names of the schema and table you want to modify.
Publication Slots Configuration
Publication slots configuration involves using the Create Replication Slot command in PostgreSQL to establish a slot dedicated to publishing data. This command serves the purpose of reserving a specific space within the primary database, exclusively intended for the designated publication slot. By creating such a slot, users gain the ability to efficiently and securely publish data to the primary database while ensuring seamless replication and synchronization with other databases.
The basic syntax to create a publication slot is as follows:
SELECT pg_create_logical_replication_slot('slot_name', 'plugin');
Replace 'slot_name' with a unique name for the publication slot, and 'plugin' with the name of the logical decoding plugin you intend to use for replication.
Custom Configurations
Once you have granted the appropriate permissions, Rivery will automatically generate replication slots and publications in a Postgresql database as part of its default configuration. However, you have the option to create dedicated replication slots or publications for specific Rivers according to your preferences.
Custom Replication Slots
With Rivery, you have the flexibility to set a custom Replication slot name. This name refers to the PostgreSQL logical decoding slot that is generated to stream changes from a particular plug-in for a specific database/schema.
Please Note:
If you do not provide a replication slot, a default one will be automatically created: Rivery_<account id>_<river id>_source.
Run this to view the replication slots and the associated data within them:
SELECT * FROM pg_replication_slots;
To create a replication, please perform the following commands in your database:
 1. Access the PostgreSQL client by logging in with superuser credentials.
 2. Execute the following command:
SELECT pg_create_logical_replication_slot('rivery_pgoutput', 'pgoutput');
 1. Assign the replication slot name to the River.
 image.png
Custom Publication Slots
You can create a publication for specific tables in your database, where only changes from those tables will be replicated by Rivery. To perform this action, you will need to have the CREATE privileges.
Please Note:
If a specific name is not provided, the default name for the following publication will be created: rivery_<account id>_<river id>_source.
In such cases, Rivery automatically executes the following command during the initial run and creates a publication for ALL TABLES:
 CREATE PUBLICATION rivery_<account id>_<river id>_source FOR ALL TABLES;
To create a publication for specific tables within your database, please perform the following commands:
 1. Log in to a PostgreSQL client as a superuser.
 2. Create publication for your tables.
CREATE PUBLICATION rivery_publication FOR TABLE movies, films, actors;
To remove or update the list of tables under a publication:
ALTER PUBLICATION rivery_publication ADD/DROP TABLE my_table;
Optionally, you can also choose to create a publication for specific operations on particular tables:
CREATE PUBLICATION rivery_insert_only FOR TABLE movies WITH (publish = 'INSERT');
 1. Ensure that your tables are included in the publication.
SELECT * FROM pg_publication_tables;
 1. Once you have created your publication, assign its name to the River.
 image.png
 2. To ensure the accurate insertion of the publication, please execute the following command:
SELECT pubname, puballtables, pubinsert, pubupdate, pubdelete
FROM pg_publication
WHERE pubname = 'rivery_insert_only';
Was this article helpful?


text:
Microcosm, with partners Space Micro and HRP Systems, will design, build, and test a plug-and play (PnP) star sensor for small satellites, achieving TRL 6 at the completion of Phase II. All three companies are very experienced in developing PnP systems. On a recent Phase II Air Force SBIR program, Microcosm built and tested a prototype miniature star sensor called MicroMakTM
, and is building a prototype radiation hard star sensor under a new Phase II Air Force SBIR. The new star sensor proposed here will focus on PnP compatibility for NASA missions of interest, with a mass goal of 0.5 to 0.75 kg. Anticipated NASA applications necessitate a modified version of the baseline MicroMakTM
sensor, including: 1) Interfaces compatible with a new PnP avionics architecture, 2) radiation-hardened CMOS focal plane arrays (FPAs), and 3) processing electronics to enable longer mission life. The baseline MicroMakTM
sensor was designed with inherent radiation-tolerant features: FPAs with no direct view of space, and all-reflective optical elements. The PnP star sensor will leverage MicroMakTM
heritage, providing a modular, PnP, long-life star sensor for NASA missions, providing a cost and mass reduction of a factor of 2 or more over existing star sensors.


Is Chamomile Tea Safe During Breastfeeding? Herbal Insights
Chamomile tea is generally considered safe during breastfeeding and might even have soothing properties. However, it's crucial to consume it in moderation, as excessive intake might have unintended effects. Consulting a healthcare provider can provide further guidance on its safe consumption during breastfeeding.
Key Takeaways
 - Chamomile tea has soothing and calming properties that can benefit both the body and mind during breastfeeding.
 - It is important to consult with a healthcare provider before incorporating chamomile tea into your breastfeeding routine, as excessive intake can have unintended effects on both the mother and baby.
 - Chamomile tea contains compounds that can pass into breast milk, potentially causing allergic reactions in infants with sensitivities.
 - The recommended dosage is typically one to two cups per day, and it is advisable to start with a lower dosage and gradually increase if needed, while paying attention to any adverse effects.
Potential Benefits of Chamomile Tea
One potential benefit of chamomile tea during breastfeeding is its soothing properties. Many mothers find that drinking chamomile tea can help relax and calm both their body and mind, which can be especially beneficial during the often stressful and tiring period of breastfeeding.
Chamomile tea is known for its potential health benefits, including its anti-inflammatory and antioxidant properties. It may also help with digestion and relieve symptoms of gastrointestinal issues, such as bloating or indigestion, which can be common during the postpartum period.
While more research is needed to fully understand the effectiveness of chamomile tea during breastfeeding, many women have reported positive results. As always, it's important to consult with your healthcare provider before incorporating any new substances into your breastfeeding routine.
Safety Considerations for Breastfeeding Moms
Now, let's address some safety considerations for you, as a breastfeeding mom, when it comes to consuming chamomile tea.
It's important to be mindful of excessive intake, as it may have unintended effects on both you and your baby.
To ensure the safest approach, consulting your healthcare provider for guidance on the appropriate consumption of chamomile tea while breastfeeding is highly recommended.
Excessive Chamomile Tea
Before consuming excessive amounts of chamomile tea while breastfeeding, it's important to be aware of the potential safety considerations for breastfeeding moms.
While chamomile tea is generally considered safe in moderation, exceeding the recommended limits might pose potential risks. Drinking excessive amounts of chamomile tea can lead to drowsiness and sedation, which can affect your ability to care for your baby.
Additionally, chamomile tea contains compounds that can pass into breast milk, potentially causing allergic reactions in infants with sensitivities.
It's crucial to remember that every individual is different, and what might be a safe amount for one person may not be the same for another.
Therefore, it's advisable to consult with your healthcare provider before consuming excessive chamomile tea while breastfeeding to ensure the safety and well-being of both you and your baby.
Healthcare Provider's Guidance?
To ensure the safety and well-being of both you and your baby, consult your healthcare provider for guidance on the safe consumption of chamomile tea while breastfeeding. Your healthcare provider's opinion is crucial in making an informed decision about whether or not to include chamomile tea in your diet.
They can provide you with the necessary information regarding any potential risks or benefits associated with chamomile tea consumption during breastfeeding. It's always recommended to seek a medical professional's advice before making any dietary changes while breastfeeding.
Your healthcare provider will take into consideration your individual health status, any existing medical conditions, and the specific needs of your baby to provide you with personalized guidance on whether chamomile tea is safe for you to consume while breastfeeding.
Recommended Dosage and Frequency
During breastfeeding, you should consume chamomile tea in moderation, limiting the dosage and frequency to ensure safe intake. The recommended dosage for chamomile tea is typically one to two cups per day. It's important not to exceed this amount, as excessive consumption may lead to potential risks.
Drinking too much chamomile tea can cause drowsiness, gastrointestinal discomfort, and allergic reactions in some individuals. To avoid these issues, it's advisable to start with a lower dosage and gradually increase it if needed. Additionally, it's essential to pay attention to your body's response and consult with your healthcare provider if you experience any adverse effects.
Possible Side Effects of Excessive Consumption
Excessive consumption of chamomile tea during breastfeeding can lead to potential side effects. While chamomile tea is generally considered safe, consuming it in excess may pose certain risks. It's important to be mindful of the recommended dosage and frequency to avoid any potential long-term effects.
Although chamomile tea is known for its soothing properties, overindulging in it can have unintended consequences. Some potential side effects of excessive consumption may include drowsiness, dizziness, and gastrointestinal issues such as diarrhea or upset stomach.
It's crucial to consult with a healthcare provider before incorporating chamomile tea into your breastfeeding routine, as they can provide valuable guidance and ensure the safety of both you and your baby.
Interactions With Medications and Supplements
When incorporating chamomile tea into your breastfeeding routine, it's important to be aware of potential interactions with medications and supplements.
While chamomile tea is generally considered safe, it can still interact with certain medications and supplements, posing potential risks.
Chamomile contains compounds that may affect how your body metabolizes certain drugs, leading to reduced effectiveness or increased side effects.
It's especially important to exercise caution if you're taking medications such as blood thinners, anti-anxiety or sleep medications, and sedatives.
Additionally, chamomile tea may interact with supplements like St. John's Wort or valerian root, which can also have sedative effects.
To ensure your safety and the efficacy of your medications, it's crucial to consult with your healthcare provider before incorporating chamomile tea into your breastfeeding routine.
Best Time to Consume Chamomile Tea
To optimize the benefits of chamomile tea while breastfeeding, it's best to consume it in the morning or early afternoon. This timing allows you to experience its soothing effects without interfering with your sleep at night.
Chamomile tea is known for its calming properties, making it an excellent choice for relaxation during the day. When brewing chamomile tea, it's recommended to steep one to two teaspoons of dried chamomile flowers in hot water for about five minutes.
You can enjoy it plain or add a touch of honey and lemon for a flavorful twist. There are also various chamomile tea recipes available, such as chamomile iced tea or chamomile latte, which can be a refreshing treat during warmer months.
Remember to consult with your healthcare provider for personalized advice on consuming chamomile tea while breastfeeding.
Tips for Choosing and Preparing Chamomile Tea
For optimal results, choose and prepare chamomile tea carefully while breastfeeding.
When selecting chamomile tea brands, look for reputable companies that prioritize quality and organic ingredients. Reading product labels can help you identify any potential allergens or additives that you may want to avoid.
Additionally, consider purchasing loose-leaf chamomile tea instead of tea bags, as it tends to have a higher quality and potency.
When it comes to brewing techniques, steeping chamomile tea for 5-10 minutes in hot water is generally recommended. However, avoid boiling the tea for too long, as it may result in a bitter taste. Experimenting with different brewing times and temperatures can help you find the perfect balance of flavor and potency.
Remember to consult with your healthcare provider to ensure that chamomile tea is suitable for you and your baby during breastfeeding.
When to Seek Medical Advice
If you experience any unusual adverse effects after consuming chamomile tea while breastfeeding, it's important to seek medical advice. Your healthcare provider can assess your individual situation and provide guidance on whether it's safe to continue drinking chamomile tea.
Don't hesitate to consult them for any concerns or questions you may have.
Unusual Adverse Effects
If you experience any rare or severe side effects after consuming chamomile tea while breastfeeding, it's important to seek medical advice immediately. While chamomile tea is generally safe during breastfeeding, there are still potential risks of uncommon reactions.
These unusual adverse effects may include allergic reactions, such as hives, itching, or difficulty breathing. Some individuals may also experience gastrointestinal issues like stomach pain, nausea, or diarrhea. In rare cases, chamomile tea might cause drowsiness or dizziness.
If you notice any of these symptoms or any other unusual reactions after consuming chamomile tea, it's crucial to reach out to your healthcare provider right away. They can assess your situation and provide appropriate guidance to ensure your well-being and the well-being of your baby.
Consulting Healthcare Provider?
When experiencing


text:
Flood Risk Assessment and Protection Guidelines for Infrastructure Planning in Qatar
AuthorAl Mamoon, Abdullah
MetadataShow full item record
This paper presents key features of "Flood Assessment and Protection Guidelines" (FAPG) prepared by the Ministry of Municipality and Environment (MME), Qatar. It is intended that the FAPG will provide guidance and assistance to a wide range of entities including government agencies, developers, engineers, planners and policy makers for locating flood prone areas across Qatar, assessing potential flood hazard and subsequent mitigation. A flood modelling was carried out using two-dimensional rain on grid (RoG) hydraulic modelling approach. A series of flood risk maps covering both rural and urban areas of Qatar were then prepared as per the degree of flood risk to people, property and infrastructure. These maps have been provided as digital flood inundation layers in an interactive GIS web-based flood mapping portal.


3 January 2013, 20:58
Depardieu is a friend - Putin
Depardieu is a friend - Putin
As part of France's austerity measures an attempt was made to introduce a 75% tax on the richest French citizens. One target of this tax was famous French actor Gerard Depardieu who was then embroiled in a row with the French authorities. In the end Depardieu renounced his French citizenship and was granted Russian citizenship by President Putin. Is this the beginning of a mass-migration of wealthy Europeans to Russia?
The President of the Russian Federation Vladimir Putin has granted Russian citizenship to French actor Gerard Xavier Depardieu under Article 89 of the Russian Constitution according to a brief statement issued on the Official Site of the President of Russia.
Under Article 89, point (a) of the Constitution of the Russian Federation the President of the Russian Federation has the right to grant citizenship and political asylum to Russian nationals, foreign citizens and stateless individuals.
Further powers and more specific laws defining the president's authority come under a November 28, 1991 "Federal Law On Citizenship of the Russian Federation", amended by the Judiciary on the 17th of June 1993 and a Federal Law dated February 6th 1995. Article 33 of the Act defines the specific powers of the President and states that the President decides on: granting Russian citizenship to foreign nationals, citizens of the former Soviet Union and stateless persons. The President also decides on the restoration of Russian citizenship, the revocation of citizenship, permission to have dual citizenship and the issuing of honorary citizenship. The President exercises these powers by issuing Presidential Decrees.
Presidential spokesperson Dmitry Peskov has stated that the decision by President Putin to grant Mr. Depardieu Russian Citizenship was due to his substantial contributions to the development of Russian culture and cinema. Mr. Peskov stated that Depardieu played in a number of very famous feature films about Russian history and performed many roles depicting important Russian historical figures, including work depicting Grigory Rasputin.
A promise to grant the French actor Russian citizenship was made during a recent press conference given by Russian President Vladimir Putin, who said the promise was made due to the significant contributions to Russia's national culture by Depardieu and his films.
After being granted citizenship the Depardieu camp has not yet issued an official statement but the story began with attempts by France to institute a 75% tax on the super-rich. Russia's flat rate of 13% tax for all citizens was then seen as an attractive option for Depardieu who has stated publically that during his life he has paid over $191 million in taxes to the French state over the past 45 years. Something the state apparently does not value.
The new French tax which was to target people making more than €1 million a year was thrown out by France's highest constitutional authority because it was to only target individuals and not households, meaning the law would only apply to 1,500 people and not affect those making just under €1 million a year.
Mr. Depardieu's problems with the French authorities came to a boil when after announcing his plans to renounce French citizenship, his only recourse in the row, French Prime Minister Jean-Marc Ayrault publically called Mr. Depardieu's actions "pathetic." To which Mr. Depardieu answered "I've no place to complain or to boast, but I refuse to be described as pathetic."
During a press conference that was covered by the VOR in December, President Putin called Mr. Depardieu a "friend" and said that "If Gérard really wants to have either a residency permit in Russia or a Russian passport, we will assume that this matter is settled and settled positively."
Mr. Depardieu is very well known and loved in Russia and appears on billboards around Moscow and in ads for Sovetsky Bank. His films are some of the most popular in Russia and he has been very active in the Russian cultural scene over the years.
Russian media reports that Mr. Depardieu will soon begin working on several projects where he will star in adaptations Russian literary classics including the Brothers Karamazov, Crime and Punishment and The Captain's Daughter by Alexander Pushkin.
In related news, upon hearing that Mr. Depardieu received Russian Citizenship, Russian Deputy Prime Minister Dmitry Rogozin predicted the beginning of the migration of wealthy Europeans to the Russian Federation. Mr. Rogozin stated on his Twitter page that "In the West people have very poor knowledge of the Russian tax system but when they learn about it we can expect the mass migration of wealthy Europeans to Russia".
 and share via


Using UWB asset tags to dynamically create rt-ispace augmentations
Essentially, an asset tag is a small device that can be used to locate and instantiate, using UWB in this case, an augmentation in an rt-ispace environment completely dynamically. The augmentation follows the position and orientation of the asset tag, making for a very simple way to implement augmented spaces. If engineered properly, it could be an extremely simple piece of hardware that would be essentially UWB hardware along with a MEMS IMU and a battery. Instead of WiFi as in this prototype, pose updates could be sent over the UWB infrastructure to make things really simple. Ideally, these would be extremely cheap and could be placed anywhere in a space as a simple way of adding augmentations. These augmentations can be proxy objects (all aspects of a proxy object augmentation can be modified by remote servers) and can be as simple or complex as desired.
There are some similarities and differences with the ArUco marker system for instantiating augmentations. The ArUco marker can provide an ID but that has to be matched with a previously instantiated object that has the same ID attached. Asset tags don't require any pre-configuration like that. Another problem with ArUco markers is that they are very affected by occlusion – even a wire running across a marker might make it undetectable. Asset tags are not affected by occlusion and so will function correctly in a much wider range of circumstances. They do require UWB enabled spaces, however. In the end, both styles of augmentation instantiation have their place.
Note that the asset tag doesn't need to contain the actual asset data (although it could if desired). All it needs to do is to provide a URL of a repository where the asset (either Unity assetbundle or glTF blob) can be found. The asset is then streamed dynamically when it needs to be instantiated. It also provides information about where to find function servers in the case of a proxy object. The rt-ispace user app (in this case an iOS app running on an iPad Pro) doesn't need to know anything about asset tags – they just inject normal looking (but transient) augmentation updates into the rt-ispace system so that augmentations magically appear. Obviously, this kind of flexibility could easily be abused and, in real life, a proper security strategy would need to be implemented in most cases. For development, though, it's nice for things just to work!
One application that I like is a shared space where people can bring along their virtual creations in the form of some asset tags and just place them in the rt-ispace space so that any user in the space could see them.
Another idea is that items in stores could have rt-ispace asset tags attached to them (like security tags today) so that looking at the item with an AR device would perhaps demonstrate some kind of feature. Manufacturers could supply the asset and functions servers, freeing the retail store from having to implement something for every stocked item.
The video above shows how the augmentation tracks the UWB tag around and that the IMU controls the augmentation's orientation. For now, the hardware is a complete hack with multiple components but it does prove that the concept is viable. The UWB tag (the white box on the floor under the figure's right foot) controls the location of the augmentation in the physical space. A Raspberry Pi fitted with an IMU provides orientation information and drives the resulting pose via WiFi to the rt-ispace servers. The augmentation is the usual glTF sample CesiumMan.
Linking AR augmentations to physical space using the ArUco marker system
Following on from the earlier work with ArUco markers, rt-ispace can now associate ArUco markers with augmentations in a space. The image above shows two glTF sample models attached to two different ArUco marker codes (23 and 24 in this case). Since these models are animated, a video also seems appropriate!
The image and video were obtained using an iPad Pro running the rt-ispace app that forms the front end for the rt-ispace system. A new server, EdgeAnchor, receives the AR video stream from the iPad via the assigned EdgeAccess, detecting any ArUco markers that may be in view. The video stream also contains the iPad camera instrinsics and AR camera pose, which allows EdgeAnchor to determine a physical pose in space of the marker relative to the camera view. The marker detection results are sent back to the iPad app (via EdgeAccess) which then matches the ArUco IDs to instantiated augmentations and calculates the world space pose for the augmentation. There are some messy calculations in there but it actually works very well.
The examples shown are set up to instantiate the augmentation based on a horizontal marker. However, the augmentation configuration allows for a 6-dof offset to the marker. This means that markers can be hung on walls with augmentations either on the walls or in front of the walls, for example.
A single EdgeAnchor instance can be shared among many rt-ispace users as no state is retained between frames allowing the system to scale very nicely. Also, there is nothing specific to ArUco markers: in principle, EdgeAnchor could support multiple marker types, providing great flexibility. The only requirement is that the marker detection results in a 6-dof pose relative to the camera.
Previously, I had been resistant to the use of markers, preferring to use the spatial mapping capabilities of the user device to provide spatial lock and location of augmentations. However, there are many limitations to these systems, especially where there is very limited visual texture or depth changes to act as a natural anchor. Adding physical anchors means that augmentations can be reliably placed in very featureless spaces which is a big plus in terms of creating a pleasant user experience.
Adding ArUco marker detection to rt-ai
There are many situations where it is necessary to establish the spatial relationship between a camera in a space and 3D points within the same space. One particular application of interest is the ability to use markers to accurately locate holograms in a space so that AR headset users see the holograms locked in the space, even as they look or move around the space. OpenCV has the ArUco marker detection included so that seemed like a good place to start. The screen capture above shows the rt-ai Aruco marker detector identifying the pose of a few example markers.
This is the simple rt-ai test design with the new ArUcoDetect stream processing element (SPE). The UVC camera was running at 1920 x 1080, 30 fps, and the ArUco SPE had no trouble keeping up with this.
This screen capture is a demonstration of the kind of thing that might be useful to do in an AR application. The relative pose of the marker has been detected, allowing the marker to be replaced by an associated hologram by a 3D application.
While the detection is quite stable, the ArUco SPE implements a configurable filter to help eliminate occasional artifacts, especially regarding the blue (z-axis) which can swing around quite a bit under some circumstances due to the pose ambiguity problem. The trick is to tune the filter to eliminate any residual pose jitter while maintaining adequate response to headset movement.
One challenge here is management of camera intrinsic parameters. In this case, I was using a Logitech C920 webcam for which calibration intrinsics had been determined using a version of the ChArUco calibration sample here. It wouldn't be hard for the CUVCCam SPE to include camera intrinsic parameters in the JSON associated with each frame, assuming it could detect the type of UVC camera and pick up a pre-determined matrix for that type. Whether that's adequate is a TBD. In other situations, where the video source is able to supply calibration data, the problem goes away. Anyway, more work needs to be done in this area.
Since rt-ai stream processing networks (SPNs) can be integrated with SHAPE via the Conductor SPE (an example of the Conductor is here), an AR headset running the SHAPE application could stream front facing video to the ArUco SPN, which would then return the relative pose of detected markers that have previously been associated with SHAPE virtual objects. This would allow the headset to correctly instantiate the SHAPE virtual objects in the space and avoid problems relying on inside out tracking alone (such as in a spatial environment with a repeating texture that prevents unique identification).
Embedding AI inference in the Spatial Networking Cloud
rt-ai is a system for graphically composing edge AI stream processing networks either distributed on multiple processing nodes or all running on a single node. In the latter case, shared memory can be used for transfers between the functional blocks, making it almost as efficient as monolithic code. So when it comes to embedding AI inference in a Spatial Networking Cloud (SNC), rt-ai makes perfect sense. However, the underlying network styles are completely different – SNC uses a highly dynamic series of multicast and end to end virtual links whereas rt-ai uses static MQTT or shared memory links. Each makes sense for the different applications so it is necessary to create a bridge between the two worlds.
Right now, bridging is done (for video streams) with the GetSNCVideo and PutSNCVideo stream processing elements (SPEs) that can be added to any video stream processing network (SPN). GetSNCVideo can grab SNC video frames from the configured stream source which then acts as an rt-ai source for the downstream SPEs. Once processing has been completed, the frames can be re-injected into SNC using the PutSNCVideo SPE. There can be similar bridges for sensor or any other type of data that needs to be passed through an rt-ai SPN


text:
The latest WIP includes a new behavior in Grasshopper that we are experimenting with to improve performance; multithreaded component solving.
The following four components have been modified to perform calculations using multiple threads.
- Dash Pattern
- Divide Curve
- Boundary Surface
We are decorating these components with small dots in the upper left corner to help you understand the component's capabilities and current 'mode' of operation.
No dots : the component does not currently support multi-threaded calculations
One dot: the component does support multi-threaded calculations, but is currently calculating with a single thread (i.e. legacy mode)
Two dots: the component does support multi-threaded calculations and is using the feature
For components that do support multi-threaded calculations, the feature can be enabled/disabled using the right click context menu on the component itself.
What to test:
I am not interested in timing results at the moment. What I want to make certain is that the output from these components produce the exact same results and same data structure (for trees) when run in both single threaded and multi-threaded modes. Of course, I'm also interested to know if any other unusual behavior appears by using these components.
These initial four components are our prototypes to ensure things are running correctly before converting other components over to be able to using multiple threads.


Click here to Skip to main content
Click here to Skip to main content
"finally" clause in C++
, 15 Oct 2012 CPOL
Rate this:
Please Sign up or sign in to vote.
finally like clause in C++
This article aims to help a programmer who has the need to use "finally" like clause (like in Java) in C++.
There are many cases where such need for finally clause arises, mostly as I can see it, it always happen when a programmer uses a third party or legacy "C oriented" library that deals with resources in a procedural way like open/close file or connect/disconnect a service.
For example, MFC library solves the problem with the introduction of wrapper classes like CWaitCursor, where the cursor is a resource reclaimed back on destruction of the object. The destruction of the object is deterministic and happens on the event of getting out of scope (block end).
What I'm going to show is a solution for an already existing code that needs to be more deterministic and clean, but yet written in a procedural way.
Another reason to use this "finally" like construct is for external resources that should be reclaimed no matter what happened after they were successfully claimed. For example, deterministic log-out of a remote service no matter what happens after a successful log-in to that service. That way prevents the remote dangling service from waiting for a log-out until some time-out routine will close the remote socket...
This solution is not a replacement for a superior design like using RAII (Resource Acquisition Is Initialization), see "Why doesn't C++ provide a "finally" construct?".
For beginners, I strongly suggest to read briefly the following items in the C++ reference:
 1. Lambda Functions in C++11 - the Definitive Guide
 2. Function objects
 3. std::function
 4. std::bind
It is possible to use the example ahead without deep knowledge of what is lambda or what is function object.
Using the Code
The code will run only on C++11 compiler and maybe some C++0x compilers!
For Beginners
It is very easy to use:
 FILE *file = fopen("test","w");
 finally close_the_file([&]{
 cout << "Finally you close the file." << endl;
The [&] {...} is the code I suspect is not well understood for beginners, but it doesn't matter, as long as you accept the "unreadable" set of brackets, everything should be OK.
Let's explain:
 1. Opening a file the C way using stdio library, this is an old way of using files, but it is used here for the sake of the explanation. I consider the file opening as successful!
 2. Next line, there is a declaration of object named close_the_file of a class finally and then there is lambda expression that should run on the event of exiting the scope. basically you can copy and paste the class finally (see ahead) and put somewhere in one of your libraries headers for later use.
The "finally" Class
The finally class provides a means of running commands upon leaving the block by using the destructor of the class.
class finally
 std::function functor;
 finally(const std::function &functor) : functor(functor) {}
Somehow the example file hasn't been uploaded so I decided to write a little example just to show how it works. Try this:
 try {
 cout << "Open a file" << endl;
 finally close_the_file([&]{
 cout << "do something before exception" << endl;
 throw("Some exception");
 cout << "do something after exception!?" << endl;
 catch(char *ex)
 cout << ex << endl;
 ; //do nothing
 1. First revision
 2. Alternative example to the example file
About the Author
Cpp For All
United States United States
No Biography provided
Comments and Discussions
GeneralMy vote of 5 Pinmembermagicpapacy22-Oct-12 17:27
GeneralMy vote of 4 Pinmemberkosmoh16-Oct-12 8:09
GeneralRe: My vote of 4 PinmemberCpp For All16-Oct-12 22:06
GeneralRe: My vote of 4 Pinmemberkosmoh17-Oct-12 7:53
Questionfinally? PinmemberSelvin15-Oct-12 16:11
AnswerRe: finally? PinmemberCpp For All15-Oct-12 21:09
GeneralRe: finally? PinmemberSelvin15-Oct-12 22:50
GeneralRe: finally? PinmemberCpp For All16-Oct-12 0:11
| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.141223.1 | Last Updated 16 Oct 2012
Article Copyright 2012 by Cpp For All
Everything else Copyright © CodeProject, _PHONE_
Layout: fixed | fluid


Reducing combustion noise by flow control
The problem
Dryer oven burner
Typical A-weighted noise levels generated by a dryer oven, used in malting grain, reached up to 95 dB. A low-frequency 'boom' at a tone of 82 Hz dominated. As the boom occurred only at low firing, it was diagnosed as flame instability that developed into an oscillation at a resonant frequency of the combustion tube. The precise cause of the instability was determined to be an excessively weak ratio of fuel to air at low firing.
The solution
To overcome this problem, a motor-controlled valve, previously used for controlling weld fume extraction, was adapted and fitted to the combustion fan intake. Triggered by a micro-switch, the valve was used to reduce the air flow at low loads and so improve the combustion characteristics.
The cost
£100 per unit. (1995)
The result
An overall noise reduction of about 8 dB with the low-frequency tone being reduced by 21 dB. The bought-in units had no effect on operations, could be retrofitted and satisfied hygiene requirements.
Consultants were Industrial Noise and Vibration Centre.
Updated 2010-04-02


- Community groups or institutions
When should you honor colleagues?
Although any time is a good time to honor colleagues, there are some occasions when it's particularly appropriate.
Special occasions
These may have to do with the life of the organization, the life of the person being honored, or both. Some examples:
 - Retirement. Unfortunately, the reality is that most organizations and groups seldom honor colleagues until they leave.
If it is worth honoring a colleague, it is worth doing it before she is about to move on. It's great to have support for your work after it's done, but it's a lot better to have that support while the work is going on.
 - A significant anniversary. A number of years on the job, for instance, or a particular anniversary of the organization itself.
The staff members of an organization decided to honor their director, who had been in his position for ten years. To thank him for his leadership, his support and mentoring of staff, and his activism in the field, they held a reception to which they invited not only everyone in the organization, but directors of many other similar organizations, funders, and state bureaucrats - colleagues from several different contexts. The staff and others presented him with gifts, and many of the guests spoke of his contributions to the field and to their lives.
 - A personal milestone - a birthday, a wedding, the birth of a child.
We tend to think of pleasant occasions as the appropriate ones to honor colleagues, but others may provide a truer test of our respect for them. To have the support of colleagues at a funeral or while going through a difficult divorce may be honor of a different kind, but it's the kind that isn't forgotten.
 - The attainment of a personal or professional goal - a long-sought degree, a promotion, a certification.
The conclusion of something successful, or the achievement of a goal
The opening of a new facility, the culmination of a fundraising campaign, the passage of a favorable town ordinance - all might be good times to honor the colleagues who made them possible.
Regularly scheduled occasions
The annual meetings of coalitions, organizations, community groups, and professional associations are often times when colleagues are recognized or given awards for the work they've done in the past year. The adult education coalition mentioned earlier is a prime example, but the Human Resource Center and the North Quabbin Community Coalition, just to cite organizations that appear in other sections in this chapter, did or do the same thing. When reviewing a year's accomplishments, people often find it fitting to honor those responsible for them.
To say thank-you for a job well done or for support and mentoring
Despite the fact that there are particularly appropriate times to honor colleagues, sometimes it's right to honor colleagues simply because you want to. The realization that a particular colleague has been working effectively for a long time with no acknowledgement, or that she has been consistently helpful and supportive to others over a long period, might lead to a gift, or to some formal ceremony. This sort of appreciation is often the most powerful, because it is so obviously sincere.
Honoring colleagues doesn't have to be formal. It can happen every day in small ways. One coalition director used to send "thank-you" postcards to people to let them know she had appreciated something they did, or their ongoing work. A spoken word of praise, an acknowledgement of someone's hard work - perhaps most prized when that work hasn't yielded much - can make someone's day or week or year. Everyone needs to know she's valued, and it's important, both to an organization and the individuals who work in it, to remember and act on that as much as possible.
How do you honor colleagues?
There are a variety of ways to honor colleagues, but there are some general guidelines that apply to all of them.
General guidelines
Make it personal
Unless this is an award presented by a national or statewide organization to someone most of the members don't know personally, honoring colleagues is, in fact, highly personal. By honoring her, people in an organization or field are telling a colleague, someone they work with closely, that they appreciate her and consider her worthy of special recognition. Feelings of affection, gratitude, mutual dependence, and respect all come into play to varying degrees.
That being the case, any ceremony, gift, or simple recognition should be tied to the person receiving it as closely as possible. It's often a good idea to involve those closest to the honoree - close family, colleagues, mentors - and to make sure that the occasion includes stories about the person's significant accomplishments, about her personality, and about her as a human being. A gift should be something that fits both the person and the occasion. Every effort should be made to show that you're honoring this particular person, not just her achievements.
Give the honoree something
It may be a meaningful or significant gift (a photo of her with participants, a beautiful book or print, a super-light backpacking tent, etc.), a plaque or certificate, or a humorous gift with a personal story behind it. Whatever it is, there should be something material that the honoree can keep and look at later to remember the occasion.
A gift like this can be almost anything. At one celebration, the director of an organization was given a number of hats - a chef's hat, a baseball cap, a football helmet, etc. - to represent the different hats he had to wear to do his job. Another director, who collected them, was presented with a number of small, inexpensive wind-up toys that did silly things (a walking building, a tiny Godzilla that lurched and breathed sparks, a marching band of gorillas).
Obviously, whatever you give will be limited by your resources. Organizations sometimes collect from each staff member to buy a gift for an honoree, where that's appropriate (more common for a personal occasion - retirement, birthday, etc. - than for an organizational or professional award). Resources also have to be considered when deciding what kind of ceremony or celebration to have.
Record the occasion
Not only is this an important part of the work life of the person honored, but it's important in the life of the organization as well. Make sure to take photographs, or make a video or audiotape of the occasion, and give the honoree a copy, as well as keeping copies for the organization. If you have a digital camera or digital video camera, you can easily put photos or video on computer disks or CD's.
Think about the guest list
Whom will you invite? Who are the important people in the honoree's life? Will you invite dignitaries - politicians, people important in the field - or will you restrict the list to those who have real personal and/or professional connections to your colleague? Will you invite people he doesn't like because they "should" be there?
Consider inviting the media
If you want to publicize this occasion or award, if you want to use it to draw attention to your work or your organization, then the media should definitely be there. If honoring your colleague is a more private issue, and you feel that using the occasion for publicity would be exploitation, then you probably would not invite the media to be present. That doesn't mean, however, that you shouldn't issue a press release or try to get a media story about the honor after the fact. It's both a further honor to your colleague and a chance to let people know more about what you do.
Specific ideas
There are as many ways to honor colleagues as there are those who deserve to be honored and organizations or groups to do the honoring. Your options are really limited only by your budget and your imagination (and some considerations of taste: mud wrestling is probably out).
Make a personal gesture to show your colleague you appreciate him or her
A mention at a staff meeting and in the newsletter, a small gift left on a desk or chair, or an e-card are all ways to say "thank you" to a valued colleague. Small, personal gestures - especially if they're sincere, and not just a means to keep people satisfied - are an important way to let colleagues know you appreciate the work they do.
Present an award. There are really two choices here:
 - An award presented at regular intervals (usually annually) for a general purpose - Teacher of the Year, Innovation in Youth Work, etc.
 - A special award presented to the specific person for his unique contributions to the organization or the field
An annual award is usually more formal, more competitive (in that only one person a year gets it, although many may be worthy), and more prestigious. The other type may be more meaningful to the honoree, however, because it recognizes his personal talents, skills, and value to the presenting group.
Sometimes, a group may combine the two by occasionally presenting, along with its "regular" awards, a special recognition award to someone whose accomplishments don't necessarily fit into any category, or who has achieved something extraordinary. One coalition, at its annual awards ceremony, always presented several personalized awards to unsung colleagues who had made a difference that year in the life of the community.
Give a gift
We discussed gifts above, and the possibilities here are almost limitless.
In addition to the expected or ordinary, there are gifts you may not have considered:
 - Name something for them. A room, a program, a scholarship, a grant, an award - any of these and a host of other prospects might be fitting candidates to be named for an honoree.
 - Have a day in their honor proclaimed by the legislature, the county or city council, the Board of Health. In many states, the governor, if asked by the legislature, or the legislature itself, can proclaim a single day to be named


Yellow Mocis
Moths in the genus Mocis are generally medium-sized (about 26mm across), and yellowish with closely related spot patterns. There are five such moths in North America, all in the southeastern US, more or less. The range of the yellow mocis is roughly from the east coast of Texas, all along the Gulf coast, through to Florida and South Carolina.
They have interesting, attractively striped caterpillars in the same tones of beige, brown, black and white as the adults. The caterpillars feed on forage and pasture grasses as well as some human crops (making them notable pests, unfortunately). They move like inchworms, making their bodies into a loop and then extending again, hence the common name for the genus, grass loopers or striped grass loopers.
Full disclosure: on iNaturalist, I've been told this may, in fact, be a withered mocis (Mocis marcida) and not a yellow mocis (Mocis disseverans). And hey, I'm no expert. My guess on species is based on the Peterson Field Guide to Moths of Southeastern North America, and the comparison image on, as well as skimming through's photos of each species. My impression is still that this is M. disseverans. I'm not sure what difference it makes, as both moths are of the "single sentence on Wikipedia" variety, and pretty interchangeable except for nuances in pattern.
(This sort of base, uneducated, neanderthal opinion is why I'm probably never going to be a real entomologist. 🙂
Leave a Reply


text:
From SMS to STD–is there anything smart phones won't be able to do?
Doctors and researchers in the UK are working on a chip that will detect whether or not you have a sexually transmitted disease. Much like a home pregnancy kit, users will need to urinate on a chip which detects disease. They then will plug it into their cell phone or computer and within a matter of minutes be able to read if they have any STDs (as well as what kind).
The Guardian reports that the project was inspired as a way to halt the increasing number of young people in the UK who are contracting STDs–the most common age of those contracting STDs is between 19 and 23. And because young often equates with tech-savvy, researchers believe that this technology will lead to more (and earlier!) detection for people who may be too nervous to head to the doctor.
So if you have a fear of the doctor (or, more likely, a fear of the doctor giving you bad news) you might soon have a quick and private way of finding out if you're healthy.
Though, you might want to sanitize your phone afterwards. (via the Guardian)

source: HuggingFaceFW/fineweb-edu


text: Factors shaping competitiveness of agriculture. Impact of situation on external markets on the Polish agri-food sector. Analysis of the effects of selected instruments of public policy on the structural changes in agriculture and rural areas. Competitiveness of sustainable agriculture. Budget grounds for improvement of the competitiveness of the Polish agriculture. Changes in the socio-economic structure of the rural areas as a factor of competitiveness of rural areas. Competitive agricultural holdings in Poland: in the present and in the future. Development of exporting clusters in the context of international competitiveness of the Polish agri-food sector.


text:
Lecture: The History of Russian Under the Tsars
|Mattapoisett Free Public Library|
|7 Barstow Street|
|May 04, 2013|
|2:00 PM - 3:30 PM|
Seth Mendell will present his rescheduled "The History of Russian Under the Tsars" at the Mattapoisett Free Public Library. The talk will cover the reigns of Alexander II, the Reformer; Alexander III, the Reactionary; and Nicholas II, the last Romanov. Such personalities as Lenin, Rasputin and Trotsky will be discussed in the context of the 1917 Revolution. This program is sponsored by the Mattapoisett Free Public Library and the Mattapoisett Historical Society.


Table of Contents
Search
 1. Preface
 2. Introduction to Test Data Management
 3. Test Data Manager
 4. Projects
 5. Policies
 6. Data Discovery
 7. Creating a Data Subset
 8. Performing a Data Masking Operation
 9. Data Masking Techniques and Parameters
 10. Data Generation
 11. Data Generation Techniques and Parameters
 12. Working with Test Data Warehouse
 13. Analyzing Test Data with Data Coverage
 14. Plans and Workflows
 15. Monitor
 16. Reports
 17. ilmcmd
 18. tdwcmd
 19. tdwquery
 20. Appendix A: Data Type Reference
 21. Appendix B: Data Type Reference for Test Data Warehouse
 22. Appendix C: Data Type Reference for Hadoop
 23. Appendix D: Glossary
Using TDM for Security and Compliance in Application Testing Environments
Using TDM for Security and Compliance in Application Testing Environments
Testing teams need to be compliant and maintain strict controls on the data used in testing environments.
You must identify sensitive information in huge volumes of production data and then ensure that you do not expose the information in the test data. This is a challenge and a compliance and security risk.
You can perform the following tasks to help with security and compliance in a test environment:
 - To analyze the data and identify sensitive information in the data, run profiles in TDM. You can compare the data against multiple compliance regulation standards to ensure that the data meets standard compliance regulations. For example, run a profile on the data to identify columns that contain sensitive data according to PII, PCI, or PHI compliance regulations.
 - To remove sensitive data that you identify, run a data masking operation in TDM. You can use standard masking formats such as credit card numbers or Social Security numbers to mask data or create customized formats to mask data.
 - To reduce the risk associated with creating multiple copies of test data, store the data in the test data warehouse. Multiple teams that use different machines that host a Test Data Manager Service in a domain can access a single test data warehouse.


10.12 Deleting the Junction
Deleting a junction removes the junction file and the trustees, trustee rights, and inherited rights filters that are explicitly set on the junction. It does not delete the data or trustee settings in the target location.
Changing the access path to the data might result in different effective rights for users at the target location. To avoid security or visibility issues, make sure to verify trustee settings in the target location before or after the delete. Before you delete the junction, you can use the Target Rights page for the junction to modify the settings. After you delete the junction, use any other method you normally use to view and modify rights.
 1. (Optional, recommended) Verify that the trustees and trustee rights settings at the target location are what you intend them to be when users access the data via a different path than the current junction.
 For information, see Section 10.8, Adding or Deleting Trustees for the Junction Target and Section 10.10, Modifying Trustee Rights for the Junction Target.
 2. In iManager, click Distributed File Services > Delete Junction.
 3. Browse to locate the junction you want to delete.
 4. Click OK, then confirm the warning message to delete the junction.


How to: Implement a Property Editor Based on a Custom Control (WinForms)
 - 4 minutes to read
This topic explains how to implement a Property Editor for WinForms applications. For demo purposes, the integer Property Editor based on the NumericUpDown control is implemented in this example.
NOTE
 - You can see the code implemented here in the FeatureCenter Demo, installed with XAF. This demo is located in the %PUBLIC%\Documents\DevExpress Demos 20.2\Components.NET Core Desktop Libraries\eXpressApp Framework\FeatureCenter folder, by default.
 - If you intend to use a DevExpress WinForms control that is not integrated to XAF by default, refer to the How to: Implement a Property Editor Using a DevExpress WinForms Control topic.
Follow these steps to implement a WinForms Property Editor.
 1. In the WinForms module project, inherit the PropertyEditor or WinPropertyEditor class. Note that your editor should be public.
 2. Apply the PropertyEditorAttribute to specify the data type for which the Property Editor will be used (Int32 in this example). If you pass true to the PropertyEditor attribute's last parameter, the Property Editor will be used for all integer properties in any business class.
 3. Override the CreateControlCore method. In this method, instantiate, initialize and return the control instance (the NumericUpDown control in this example).
 4. Determine which event of the control occurs when the editing value is changed by a user (e.g., the NumericUpDown.ValueChanged event). Refer to the control's documentation to find the appropriate event. Subscribe to this event and call the OnControlValueChanged method (which internally raises the PropertyEditor.ControlValueChanged event) from the event handler.
 5. Override the Dispose method and unsubscribe the event handled in the previous step.
 6. Optionally, support the IInplaceEditSupport interface and implement the IInplaceEditSupport.CreateRepositoryItem method. This step is only required if you are going to make the column editable in the editable List View.
The following code demonstrates CustomIntegerEditor class implementation based on the steps above.
using System.Windows.Forms;
using DevExpress.ExpressApp.Model;
using DevExpress.ExpressApp.Editors;
using DevExpress.ExpressApp.Win.Editors;
using DevExpress.XtraEditors.Repository;
// ...
[PropertyEditor(typeof(Int32), false)]
public class CustomIntegerEditor : PropertyEditor, IInplaceEditSupport {
 private NumericUpDown control = null;
 protected override void ReadValueCore() {
 if(control != null) {
 if(CurrentObject != null) {
 control.ReadOnly = false;
 control.Value = (int)PropertyValue;
 }
 else {
 control.ReadOnly = true;
 control.Value = 0;
 }
 }
 }
 private void control_ValueChanged(object sender, EventArgs e) {
 if(!IsValueReading) {
 OnControlValueChanged();
 WriteValueCore();
 }
 }
 protected override object CreateControlCore() {
 control = new NumericUpDown();
 control.Minimum = 0;
 control.Maximum = 5;
 control.ValueChanged += control_ValueChanged;
 return control;
 }
 protected override void OnControlCreated() {
 base.OnControlCreated();
 ReadValue();
 }
 public CustomIntegerEditor(Type objectType, IModelMemberViewItem info)
 : base(objectType, info) {
 }
 protected override void Dispose(bool disposing) {
 if(control != null) {
 control.ValueChanged -= control_ValueChanged;
 control = null;
 }
 base.Dispose(disposing);
 }
 RepositoryItem IInplaceEditSupport.CreateRepositoryItem() {
 RepositoryItemSpinEdit item = new RepositoryItemSpinEdit();
 item.MinValue = 0;
 item.MaxValue = 5;
 item.Mask.EditMask = "0";
 return item;
 }
 protected override object GetControlValueCore() {
 if(control != null) {
 return (int)control.Value;
 }
 return null;
 }
}
You can also implement IComplexViewItem in this Property Editor. This interface allows the editor to access the XafApplication instance and use an Object Space to load data from an application database.
To display a particular property using the CustomIntegerEditor Property Editor, customize the Application Model. Invoke the Model Editor for the WinForms module project and navigate to the required BOModel| Class| OwnMembers| Member node. Set the node's IModelCommonMemberViewItem.PropertyEditorType property to CustomIntegerEditor. After this, the property specified by the Member node will be displayed by the CustomIntegerEditor in all Views. To use a CustomIntegerEditor Property Editor in a specific Detail View only, use the PropertyEditorType property of the Views | <DetailView> | Items | <PropertyEditor> node instead.
NOTE
You may need to implement the IAppearanceFormat interface and manually apply the IAppearanceFormat.BackColor, IAppearanceFormat.FontColor and IAppearanceFormat.FontStyle settings of the Conditional Appearance Module to the created control.
See Also